Yuri Panchul (panchul) wrote,
Yuri Panchul
panchul

Category:

Ад Украины и Ада Америки

Вы помните, как два года назад жители Украины вели дискуссии по поводу соглашения про Евроассоциацию, которое никто из самых уверенных спорщиков не читал?

Примерно в таком же духе евроукраинец maxdz начал вчера у меня в комментариях спорить про язык программирования Ада, который он никогда не изучал и вообще в глаза не видел, но ему почему-то казалось, что:


1) якобы на языке Ада нельзя писать системы реального времени (ядра операционных систем реального времени и код процессов/задач)

2) якобы на языке Ада нельзя писать системы жесткого реального времени (с гарантированным временем ответа)

3) якобы в языке Ада в отличие от языка Си преобразования типов implicit, хотя в действительности все наоборот - в Аде все преобразования типов explicit, а вот в Си - многое implicit включая знаменитое integer promotion (источник хитрых багов при арифметических операциях с short и char)

Еще maxdz выдавал перлы типа "Ada and Erlang are probably just a "buildup" on OS functionality. Maybe even to the extent of translating Ada/Erlang calls into C system calls which will be compiled into platform-dependent assembler". Кто-нибудь объяснит мне что он имел в виду в последнем предложении?

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


Более того, в Аде, как и в Си, есть куча трюков для работы с голым железом - включая всевозможные прагмы для memory-mapped I/O registers (в Си это достигается volatile и преобразованием численных адресов в указатели) (про это спрашивал nicka_startcev).

Это все не означает, что я якобы считаю Аду лучше/популярнее/приятнее, чем Си. Такое утверждение так же неверно, как и популярное в марте 2014 утверждение "если ты считаешь что Америка не пришлет Украине на помощь авианосец - значит ты поддерживаешь Путина". Мне и Путин, и Ада по барабану. Просто Макс несет ересь на основе своих фантазий (наверное он Аду с чем-то перепутал).

Короче, чтобы окончательно и бесповоротно подвести итог в споре по Аде, я записал видео с уже знакомым вам моим приятелем Ридом Котлером, который, работая в компании Intermetrics, был одним из разработчиков компилятора для Ады:


http://en.wikipedia.org/wiki/Intermetrics

Intermetrics, Inc. was a software company founded in Cambridge, Massachusetts in 1969 by several veterans of M.I.T.'s Instrumentation Laboratory who had worked on the software for NASA's Apollo Program including the Apollo Guidance Computer.

The company specialized in compiler technology. It was responsible for the design and implementation of the HAL/S programming language, used to write the Space Shuttle PASS (Primary Avionics Software System). It participated in the design effort leading to the Ada programming language effort, designed the Red language, one of the finalists in the design competition, and wrote one of the first production-quality Ada compilers. The large-scale Ada 95 revision of the language was designed at Intermetrics.


После Intermetrics Рид работал в компании Lockheed Missiles которая известна советским читателям по картинкам в журнале "Крокодил" с изображением баллистических ракет "Трайдент". Там Рид тоже писал много на Аде.

Короче в своей речи Рид Коллер подтвердил, что:

1. На Аде можно делать все то же, что и на Си, включая системы реального времени, включая системы жесткого реального времени.

2. В Аде есть куча прагм и других штучек для контроля размещения данных в памяти (включая memory-mapped registers), пакования, контроля параллельных штучек (которыми также можно не пользоваться)

3. В Аде есть прямой интерфейс для вызова Си-функций без overhead-а.

4. Конечно Ада не так популярна как Си, но это не означает, что на ней нельзя делать все то же, что и в Си в принципе

5. Ада использовалась для создания тонны софтвера для всяких истребителей F-22, космических спутников и т.д. и т.п.



Кто для вас бОльший авторитет в языке программирования Ада и его применимости для создания систем реального времени?

Евробандеровец maxdz, который никогда не изучал Аду, но краем уха слышал, что Ада или что-то на "А" "выше уровнем" чем Си
5(10.0%)
Разработчик компилятора Ады Рид Котлер, который получил премию от NASA за писание на Аде софтвера для Space Shuttle
39(78.0%)
Из-за бугра плюете?
6(12.0%)
Subscribe

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 101 comments
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →