Обновить
3
0

Пользователь

Отправить сообщение

Именно ценника. И цены ошибки. Как верно замечено, на Буране не было ни одного человека. А на пассажирском самолете летит несколько сотен.

Буран - это автопилот, сделанный под конкретный самолет для посадки в конкретном месте в конкретное время. Так, конечно, можно, но сколько это будет стоить, если под каждый рейс автопилот делать.

И минимумы были и для Бурана. Вот тут: http://www.buran.ru/htm/landing.htm написано:

при попутном (до 5 м/с), встречном (до 20 м/с) и боковом (до 15 м/с) ветре

Это немного выше минимума 737 Боинга.

Автопилот - совсем не ИИ, это во-первых. А во-вторых, если это не проблема, то почему же до сих пор нет автопилота для взлета? Только первые опытные образцы.

Что касается посдаки - не во всех аэропортах есть нужные датчики, отсюда и погодные минимумы для автопосадки. При этом человек садится в тех условиях, когда автопилот уже не может.

Пока никому не удалось запрограммировать 100% времени полета. Видимо, тут все-таки есть проблема.

Не могут 100%. Среди этих 10% взлет (всегда, нет серийного автопилота для взлета) и посадка в плохих условиях (чем хуже условия, тем сложнее должно быть оборудование у аэропорта и самолета, оборудованных аэропортов далеко не 100%). То есть на самых опасных участках полета работает пилот, и не потому, что так хочет.

на ближайший аэродром

который весь окружен грозами с одним узким проходом, и непонятно, не закроется ли этот проход к моменту пролета.

Те люди, которые придумали это раньше, назвали это "старение света" (ну или "tired light" по-английски, усталость). Это именно такой эффект: увеличение длины волны при распространени света. Эта гипотеза противоречит наблюдательным данным, подробности хотя бы в википедии.

Поздравляю, вы придумали старение света. А теперь спросите у гугла, почему эта теория считается опровергнутой, т.е. в чем она противоречит наблюдательным данным.

Все-таки стандарт языка - это стандарт на поведение программы, а не на генерацию машинного кода. Стандарт описывает поведение именно итоговой программы в "нормальном" случае - т.е. компилятор ведет себя "правилльно", и платформа ведет себя "правильно". Работу при сбоях платформы стандарт не описывает, так что можем это пропустить.

Разделение на implementation defined и undefined behavior (а еще есть unspecified и local-specific behavior) сделано на основе опыта разарботчиков стандартов (а у тех опыт разработчиков компиляторов). Где поведение нельзя сделать единообразным, но можно и осмысленно зафиксировать для конкретной платформы - там implementation defined. Там где оно точно не упадет, но результат неизвестен - стандарт описывает возможные варианты, а какой сработает - заранее сказать нельзя, и фиксировать это в документации не особо осмысленно - unspecified. Implementation defined - это частный случай unspecified, кстати, тогда, когда можно осмысленно требовать фиксации поведения.

А последний случай - когда разнообразие существующих вариантов не позволяет гарантировать, что возможно вообще (с приемлемым уровнем оверхеда) реализовать что-то осмысленное - там undefined. Это типа деления на ноль - какой тут результат может получиться? Ну или невыровненный доступ - слишком дорого генерировать код для некоторых платформ, который это реализует. Это место объявляют undefined. Это вообще-то то, что стандартом запрещено, просто это может случиться в runtime, поэтому компилятор это не отловит, а runtime проверки - опять очень дорого.

А дальше логика разработчика комплиятора - если он знает, что чего-то в программе может не случиться - он это может использовать для оптимизации. Вот как if (0&p) ... известно, что не исполниться, то что после if, так зачем генерировать код. Так и ограничения на defined behavior с точки зрения компилятора - это такие же известные заранее результаты.

А разве результатом implementation-defined behavior может быть падение? Кажется, тут предполагается только результат, который в итоге даст программе успешно завершиться.

Затем же, зачем компилятор имеет право выкинуть код для

if (0&p) puts("bad pointer")

В моем примере компилятор знает, что 0&p - всегда 0, так и в вашем он тоже знает, что p&1 - всегда 0, потому у типа int есть требования по выравниванию.

Хотите, чтобы компилятор не учитывал требования по выравниванию - скажите об этом компилятору явно:

if (((char *)p)&1) puts("bad pointer")

ну или эквивалент с приведением к другому вырваниванию, лень вспоминать синтаксис.

Интересно, не знал раньше, спасибо. А сколько максимум должно пройти между поглощением и выбросом, чтобы можно было зачесть? Так-то нефть и уголь - тоже остатки древних растений.

и способный работать на различных видах топлива (включая нефтяные альтернативы)

уровень выбросов парниковых газов практически равен нулю

Основной парниковый газ - углекислый газ, который получается при сгорании любого органического топлива, что спирта, что бензина. Чтобы сделать двигатель без выброса парниковых газов - нужно неорганическое топливо. Например, водород, который уже упоминали. Но с доступностью такого топлива есть проблемы.

Автору не понравилось изменение политики гитхаба, и проект переехал вот сюда: https://gitea.com/BladeMight/Mahou

В Wise - элементарно. Регистрируешься, говоришь "хочу перевести из страны A в страну B столько-то в такой-то валюте на такой-то счет". После чего Wise выдает инструкцию, как и какую сумму из банка страны A перевести на счет самого Wise в той же стране A, и что написать в назначении платежа. Переводишь, Wise получает деньги и переводит дальше. Ни на каком моменте собственный счет в Wise не образуется.

Wise при этом предлагает открыть собственный счет, но и без него все работает.

впервые обнаружена «полярная планета», то есть мир с осью вращения, параллельной плоскости орбиты

А как же Уран?

А, ну да, если перечислять не множества, а описания, то бесконечные тоже будут. Правда, тут встает куча вопросов об отсеве некорректных описаний, о повторах и т.п.

Перечисление в лексикографическом порядке дает все конечные множества. Единственное бесконечное множество, которое косвенно получится - это множество всех конечных множеств.

Пропустите множества с бесконечным числом элементов. Вот хоть натуральные числа.

Например,

https://github.com/amd/blis/blob/master/kernels/zen5/3/bli_dgemm_avx512_asm_8x24.c

Это реализация BLAS для AMD. Там почти все ядра написаны на ассемблере, даже не интринсики.

Есть доктрина "плодов отравленного дерева". Если вкратце, то все, что является следствием нарушения закона, также считается полученным с нарушением закона и не может быть использовано в качестве доказательств.

В качестве обоснования часто говорят, что это эффективное средство от применения незаконных методов, ибо лишает их смысла.

В сценарии "оставить улику и завести еще одно дело" вероятен исход, что это второе дело окончится ничем, например, прокурор откажется предъявлять обвинение. Кроме того, уголовное преследование идет по стандарту "вне разумного сомнения", там тоже ограничители. И в итоге выйдет поощрение расследования с нарушением закона.

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность