16
Общий раздел / Re: 400 лет народному ополчению
« : Сентябрь 08, 2012, 01:42:33 pm »
Ага... вслед за Путиным в каких случаях?..
Онлайн компилятор Oberon-07/11
Путеводитель по Оберон-проектам.
Логи jabber-конференции.
Онлайн исходники BlackBox: тут:WeBB и на github
Исходники Project Oberon V4 на github.
Сборник решений задач книги "Современное программирование с нуля!" тут. А обсуждение здесь.
В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.
... интерпретируемый функциональный erlang (оторванный от реального железа и замаскировавший императивную машину) со сборщиком мусора работает на уровне java и быстрее чем хвалимый Go.и при каких условиях?..
... подобный рецепт как минимум гарантирует отвращение к синтаксису языка которым подобным образом пытали (и инструментарию вообще).
Да кто его знает... в изложении Кауфмана он и мне не показался уж очень сложным... скорее (по его мнению) - не вполне отработанным в каких-то решениях (кстати, тут говорилось о сложности транслятора)...Но и тут есть сермяжная правда у оппонента - на выработку адекватных требований нужно время... а если программировать сложно - то оно жрёт это время... ещё и излишнюю нервозность может вносить...Если бы речь шла о, скажем, С/С++, то, возможно, так оно и было бы, но Ада нет настолько уж и сложна.
...
Ну и где тут эта сложность использования Ады???
... Тогда вместо отвращения к синтаксису, которым "пытали", придет осознание того, что разные языки семантически похожи (если смотреть их в рамках одной парадигмы, естественно), а синтаксис - всего-лишь текстовое отражение, нужное компилятору, чтобы не запутаться.- уж не знаю, какие будут мнения...
А если написано:Код: [Выделить]public float f1(/*Type this,*/ int b) {
или:
return this.a + b;
}Код: [Выделить]PROCEDURE(this: Type) f1*(b: INTEGER) :REAL;
то это - одно и то же.
RETURN this.a + b;
END f1;
А набор семантических элементов как раз и будет включать ту "базу", которая нужна на практике.
...- кажется весьма существенным. Сколько раз встречался с тем, что читаешь книгу, читаешь... а какая-то полезная суть в одном абзаце. И, кстати, написанное коротко обычно лучшего уровня. Что связывается с подходом Усова, кстати...
Наши ученые изучают идеи Мао Цзедуна, его пятитомник и все прочее. И я сказал китайцам, что вообще-то ключевые идеи Мао Цзедуна ‑ это его 16 стихотворений. Они со мной мгновенно согласились, сказав, что это только «белые обезьяны» не понимают, что большие идеи не стоит выискивать в каких-то объемных текстах.
> на основании постановления ГКО № 10, от 04 июля 1941 годаОно так... вот позволено было простым людям "сверх плана и раньше срока" делать, игнорируя законы природы и носителей профессиональных знаний... и начались аварии... которые затем стали представлять исключительно как вредительство этих самых носителей... Тогда как там, где люди приходили хотя и новые, но чему-то учившиеся и способные осваивать новое - там почему-то происходило не столь дорогой ценой... и тоже находились методы делать быстрее и на уровне (я опять же Грабина, допустим, имею в виду)...
Одно дело когда государственная власть организует простых людей, другое дело когда простые люди организуются сами.
... что в Вашем разборе опять же в тему... для чего программировать без отвращения...Про Ариан.
Изделие стоимостью полГИГАдолларов.
Окей, давайте вернёмся к Ариану-5.
Всё они прекрасно обдумали в этом присваивании. Они даже доказали, что при нормальной эксплуатации этого ПО в эту переменную теоретически невозможно записать значение, которое в ней не поместится.Разработчики данного прибора - да. Тем более, что они, как можно понять, зафиксировали условия применения.
Единственное о чём они, возможно, не подумали, это то, что кто-то из пользователей этого прибора станет его неправильно эксплуатировать. Ну уж извините...
..., а тот самый злосчастный код перешёл в Ариан-5 именно из Ариана-4.- я так же понял это. И вот мы видим, что неправильная эксплуатация прибора была заложена в самом проекте Ариан-5 - его разработчиками.
Теперь поподробнее о том коде, сгубившем в результате эту ракету.
Как я понял, этот код работал в некоем датчике, нужном для стабилизации платформы, на которой стояла ракета перед стартом. Этот датчик должен был работать до момента старта, после старта в нём надобности не было. Именно поэтому разработчики датчика и его ПО не стали указывать требования к траектории полёта ракеты -- этому датчику нет дела до траектории, его задача не дать ракете свалиться на бок перед стартом.
Пока же ракета не взлетела, все переменные в ПО датчика теоретически не могли переполниться.
То есть в ПО этого датчика на самом деле НЕ БЫЛО ошибки!!!
Тем не менее, в общем проекте, по видимому, были архитектурные ошибки.
Во-первых, датчику позволили работать тогда, когда он уже не был нужен.
Во-вторых, основной компьютер управления полётом почему-то расценил код ошибки этого датчика, который он записал перед аварийным выключением, произошедшим из-за переполнения, возникшего в условиях его неверной эксплуатации, как признак отклонения ракеты от заданного курса.
Этот вывод и был главной ошибкой в том ПО -- компьютер по ошибке решил, что ракета отклонилась от курса, начал корректировать курс и ракета действительно отклонилась от курса, после чего разрушилась из-за резко увеличившегося аэродинамического сопротивления и самоуничтожилась...
...