Воспоминания о языках программирования в авиации (и не только)

У вас за это время либо ракета пролетит мимо цели, самолёт разобьётся, либо реактор взорвётся ... выбирайте...
Пзд♥️ц. Это ж насколько нужно упороться, чтобы продолжать тащить этот пример с какими-то там 5000 опросами чего-то там 🤦 Американский летчик вкинул его и убежал без комментариев, а вы продолжаете размазывать.

Наверное, если у тебя сверхкритичная структура, то она будет работать изолировано на отдельном процессоре, отдельной шине с подходящим интерфейсом, протоколом и тп. И нет никаких проблем в том, чтобы обеспечить ей нужную реакцию. И код напишется под нее оптимизированный.

А есть задачи, где действительно можно отреагировать на событий спустя 5 секунд. Вот и все 🤷. И зачем для этой задачи извращаться, писать на ассемблере и что-то нестандартное изобретать.
 
Реклама
Real-time traders нахмурили плечи. :)
Не в бровь, а по дрова!
🤨
wood_1fab5.png
 
Почему она должна быть мертва? 🤔 Лет 10 для производства написал программу на Делфи. А спустя несколько лет другому инженеру нужно было добавить в нее небольшой функционал, и он довольно легко это сделал. 🤔. А парень был примерно 90х годов рождения.

Сегодня потребность рынка в скриптах гораздо выше. Очень часто нужна кроссплатформенность и запуск в браузере кажется более простым решением. И тут, конечно, Делфи не у дел.

Но если есть потребность в standalone приложении с графических интерфейсом - Делфи - отличное средство.
из платных Паскаль языков - да. Из бесплатных - Lazarus очень даже хороший кроссплатформенный язык. Правда есть нюансы с некоторыми библиотеками, но это уже больше сторонний софт... я давно перешёл с Делфи на Лазарус - ну в принципе не жалею. Может для каких-то задач нуден Делфи, а вот Лазаруса более чем хватает для малых и средних проектов. Может потянет и большие проекты. Тем более есть поддержка форков...
 
Сколько много их было, этих шатлов?
Построено 6 бортов, летало в космос 5. Однако кроме самих бортов, было ещё и обслуживающее/диагностирующее оборудование. Оно тоже выходило из строя и требовало ремонт и замены комплектующих...
 
Имеете документацию по F-35???
Автоудаление.
Где-то на просторах интернета была такая инфа. Она не сильно то и секретная. Тендеры и требования по написанию в техзадании. Например, в автоматических межпланетных станциях вообще используется солянка из 11 языков программирования (видел инфу по станциям, которые полетели на Марс). Вот сам код - это уже секретно. Ну видел информацию, что в СССР и затем в России с использованием наработок ДРАКОН разработан и использовался для управлением полёта ракет чисто свой язык, только не помню его названия. Может и до сих пор используется. Вопросов к работе самих алгоритмов как-то не видел в свободном доступе...
 
Один из методов защиты программы - большой размер. А ещё это стимулирует покупку высокопроизводительной техники.
Ну так себе оправдание. Для того чтобы перевезти пяток 25 кг мешков надо заказать фуру с соответствующим расходом топлива ....
 
У нас качество результата оценивается в том числе по таким метрикам: каждая строчка кода, от которого зависит безопасность эксплуатации, должна быть покрыта автоматическим тестом; каждая строчка такого кода, содержащая условие, должна быть протестирована и на истинность, и на ложность условия.

Может показаться неожиданным, но это приводит к увеличению количества строчек кода, в том числе и не в тестах.
Для точного поведения программы использовался язык Дракон, потом тестируется да, все ветки кода по всем событиям. Вот потому, что на тестирование и отладку уходит от 70 до 90 % времени, в критических системах очень неохотно идут на нововведения. Тут я с вами совсем согласен - приходится вносить локальные переменные для контроля и отладки. Правда их потом можно забить в условные компиляции, но это такое дело...
 
Практически с самого начала.


Было кому.

По слухам: поскольку считалось, что компьютер может отказать при посадке, а уход на второй круг не был опцией, то при первом тестировании решили проверить, что случится, если пилоту придётся перехватить управление непосредственно перед посадкой. Пилот, взяв управление, дестабилизировал заход, чуть не разложил шатл, и решили больше не рисковать. Позже управление настроили так, чтобы подобного не повторялось, но традиция посадки на руках осталась.

Формально по спецификации автолэнд был. Автозаход был и по спецификации, и вовсю использовался на практике.


"Последних" - это каких?
Видимо, при посадке на автомате не всё так гладко получалось. Потому решили отказаться. Только причастным к этому делу американцам известна реальная кухня тех событий...
А что так много было выпущено Шаттлов?
 
Реклама
Я вообще не про самолёт и не про реактор и не про любимый лунный трактор :)
Какие-нибудь датчики или устройства, подключённые через интернет, который может тормозить, да и сами устройства могут тормозить.
"Ну у вас и запросы", сказал сервер баз данных и повис :) Из народного (с)
 
Я вообще не про самолёт и не про реактор и не про любимый лунный трактор :)
Какие-нибудь датчики или устройства, подключённые через интернет, который может тормозить, да и сами устройства могут тормозить.
Да возьмите вокруг нас вещи. Тот же самый автомобиль. Там датчиков - что блох на собаке. А нормальное автоматическое вождение так до сих пор безопасное не осилили в производстве. Сколько людей уже погибло от ошибок...
"Если бы программисты были строителями, то случайно залетевший в город дятел привел бы к гибели всю цивилизацию" Из народного (с)
 
Последнее редактирование:
Где-то на просторах интернета была такая инфа. Она не сильно то и секретная. Тендеры и требования по написанию в техзадании. Например, в автоматических межпланетных станциях вообще используется солянка из 11 языков программирования (видел инфу по станциям, которые полетели на Марс). Вот сам код - это уже секретно. Ну видел информацию, что в СССР и затем в России с использованием наработок ДРАКОН разработан и использовался для управлением полёта ракет чисто свой язык, только не помню его названия. Может и до сих пор используется. Вопросов к работе самих алгоритмов как-то не видел в свободном доступе...
Лирика/анекдот:
Очень интересовался у замов: на каком языке оно написано? Ответ: на языке высокого уровня.
Добился у Главного разрешения на ознакомление с исходниками. Несколько раз ездил в ВЦ: то у них ключа от сейфа нет, то еще чего не хватает. Так и не довелось увидеть. :)
Автоудаление.
 
А с "паркуристами" особенно весело, когда они уходят, и надо разбираться, чего они там наворотили. Комментарии они чаще всего тоже писать не любят.
комментарии - это признак качественного кода. Я сам себе поставил правило максимально больше писать комментарии. Очень часто выручают, особенно на давно написанном коде... Это больше к процедуре написания ("особенно "умиляет" читабельность открывающих и закрывающих тело процедуры иди блока {} - типа так быстрее.) Для чего быстрее - для написания или для чтения кода? Begin end очень быстро пишется, а если ещё и автозаверешение кода настроено и работает, то это вообще отстой, а не аргумент. Потому и не воспринимаю код С/С++ как нормально читабельный код. Он не читается. От слова совсем... А уж настройка структурированного кода - это вообще высший пилотаж программирования (типа Питон так требует автоматически, о что-то там слишком увлеклись с оформлением отступами).
 
Американцам для решения этой проблемы не потребовалось привлекать половину советских программистов. Достаточным оказалось переманить одного венгерского математика. В результате фильтр Калмана использовался уже на бортовом компьютере "Аполлона".
А можно сей момент осветить более подробно - для личного просвещения...
 
комментарии - это признак качественного кода. Я сам себе поставил правило максимально больше писать комментарии. Очень часто выручают, особенно на давно написанном коде... Это больше к процедуре написания ("особенно "умиляет" читабельность открывающих и закрывающих тело процедуры иди блока {} - типа так быстрее.) Для чего быстрее - для написания или для чтения кода? Begin end очень быстро пишется, а если ещё и автозаверешение кода настроено и работает, то это вообще отстой, а не аргумент. Потому и не воспринимаю код С/С++ как нормально читабельный код. Он не читается. От слова совсем... А уж настройка структурированного кода - это вообще высший пилотаж программирования (типа Питон так требует автоматически, о что-то там слишком увлеклись с оформлением отступами).
Без примеров скучно. :)
Автоудаление.
 
Пзд♥️ц. Это ж насколько нужно упороться, чтобы продолжать тащить этот пример с какими-то там 5000 опросами чего-то там 🤦 Американский летчик вкинул его и убежал без комментариев, а вы продолжаете размазывать.

Наверное, если у тебя сверхкритичная структура, то она будет работать изолировано на отдельном процессоре, отдельной шине с подходящим интерфейсом, протоколом и тп. И нет никаких проблем в том, чтобы обеспечить ей нужную реакцию. И код напишется под нее оптимизированный.

А есть задачи, где действительно можно отреагировать на событий спустя 5 секунд. Вот и все 🤷. И зачем для этой задачи извращаться, писать на ассемблере и что-то нестандартное изобретать.
Не, вариантов реализации критических систем - хватает. Как программно, так и софтово. Я уже приводил примеры со станками - там есть варианты как на одном процессоре и одной системе, так и то, что вы говорите - разделение (это более к сложным станкам как правило относится). Вопрос не только про критически важный софт, где все современные новомодные языки как слон в посудной лавке себя ведут, а и про обычные приложения. Например, мне очень нравится LibreOffice по сравнению с мелкомягкими, только последние написаны на нативном языке, что выливается в быстродействии и меньших затратах на ресурсы, а вот Либре на довольно старых машинах очень даже неповоротливая, даже на более быстром Линуксе... Хотя работать вроде как можно, но есть небольшое неприятное послевкусие...
 
Без примеров скучно. :)
Автоудаление.
А что примеры. Возьмите примеры исходников написанных на С++ и возьмите примеры, что идут с компилятором Lazarus. Там этого добра хватает. Я насмотрелся. Мне пора присваивать почётного ветерана по компанию в чужом быдло/говнокоде и использованию кривых библиотек, за неимением других... :cautious:
 
Да возьмите вокруг нас вещи. Тот же самый автомобиль. Там датчиков - что блох на собаке. А нормальное автоматическое вождение так до сих пор безопасное не осилили в производстве.
Ну надо же. А у нас адаптивный круиз-контроль уже давно на скорости за 200 по автобанам на серийно продающихся машинах ездит.

комментарии - это признак качественного кода.
Комментарии в коде - это признак переусложнённого кода. В 99% случаев они означают, что код надо переписать, чтобы он выглядел проще.

Где комментарии действительно имеют смысл - это при описании интерфейсов библиотек, для автоматической генерации документации.

Это больше к процедуре написания ("особенно "умиляет" читабельность открывающих и закрывающих тело процедуры иди блока {} - типа так быстрее.) Для чего быстрее - для написания или для чтения кода?
Конечно, фигурные скобочки легче читаются, чем begin и end.

А можно сей момент осветить более подробно - для личного просвещения...
Погуглите "фильтр Калмана", что я вам буду пересказывать учебники.
 
Реклама
Ну почему. Можно на самолёте поставить софт, который по какому-нибудь сочетанию сигналов срочно посылал сообщение шортить акции перевозчика. Или производителя.
Называется MCAS. Шортит и те, и другие. :)
 
Назад