В 1980-х годах была организована рабочая группа по языку Ада при Госкомитете СССР по науке и технике. Группа занималась изучением всех открытых, а также добытых спецагентами КГБ засекреченных проклятыми милитаристами США данных по языку Ада. Группа исследовала возможность и целесообразность развития и использования Ады в СССР. И перспективы были обнаружены весьма большие. Деятельность этой группы привела к концу 1980-х годов к разработке компиляторов Ады для практически всех применяемых в СССР компьютеров. Была выпущена масса книг по языку Ада на русском языке.
В МГУ проводилась работа по созданию собственных пакетов тестирования ада-трансляторов на соответствие стандартам. В ЛГУ для создания ада-системы была использована ранее разрабатываемая для реализации Алгола-68 система «Паллада», которую перевели на Аду. Так «Адское Программирование» прочно вошло в жизнь советского кодера…
Тем временем, были у Ады и оппоненты. Например, участвующий в том же конкурсе Никлаус Вирт, который стал широко известен как разработчик языка «Паскаль». Вирт высказался достаточно сдержанно, но, все же, негативно. Он сказал: «Слишком много всего вываливается на программиста. Я не думаю, что, изучив треть Ады, можно нормально работать. Если вы не освоите всех деталей языка, то в дальнейшем можете споткнуться на них, и это приведёт к неприятным последствиям».
Однако Жан Ишбиа, руководитель группы разработчиков Ады, выразив своё «уважение и восхищение» Виртом, не согласился с ним, ответив на критику: «Вирт верит в простые решения сложных проблем. Я не верю в такие чудеса. Сложные проблемы требуют сложных решений». И был, кстати, вполне прав в контексте ситуации.
В данном случае был необходим действительно надежный язык программирования общего назначения. Когда-то автор данной статьи работал системным администратором в фирме, которая занималась сопровождением таможенных операций. Софт мы заказывали у разработчиков из Санкт Петербурга. Очень редко, но сбои случались. В итоге это доставляло массу проблем, бесило офисных сотрудников, которые в итоге получали простой. Со службой поддержки и с внедренцами питерской фирмы у нас были неплохие отношения, они решали эти проблемы, иногда мы вместе разбирались с кодом. В общем, ничего страшного. Ничего страшного – в данном случае.
Язык Ада изначально предназначался, в том числе, для бортовых систем ракет, самолетов, систем вооружения. Просто, есть в нашем мире устройства и процессы, в которых риск сбоя должен быть сведен к минимуму. То есть совсем. Иначе мы будем иметь не возмущенный «офисный планктон», которому пришлось задержаться на работе, а самолет, рухнувший на центр мегаполиса. Поэтому, да – Жан Ишбиа был прав. В данном контексте сложные проблемы требуют сложных решений.
В общем, язык Пентагоном был принят. Потом, как и следовало ожидать, началась многолетняя волокита со стандартизацией, регистрация торговой марки, запреты на кастомные трансляторы и прочие действия, отбившие желание массовой аудитории работать с Ада. Что, собственно, и загнало проект в весьма узкую нишу. В узкую, но весьма востребованную до сих пор.
В 1987 году язык Ада был официально стандартизован ISO. С этого момента Министерство обороны США перевело язык в общественное достояние.
К 1990 году в мире существовало уже около 200 компиляторов, соответствовавших стандарту языка Ада.
В 1995 году был принят новый стандарт Ады, известный как Ada95. В язык были введены средства объектного программирования. Кроме того, язык был дополнен более развитыми средствами для взаимодействия с программами, написанными на других языках.
В марте 2007 года опубликованы изменения в стандарте Ады. Они коснулись, в основном, возможностей объектно-ориентированного программирования. Были введены интерфейсы, принят обычный для большинства гибридных языков синтаксис вызова метода, внесён ещё ряд дополнений.
В 2012 году ISO принят и опубликован новый стандарт языка.
У Ada – простой, понятный, хорошо читаемый синтаксис. Этот синтаксис существенно снижает риск ситуаций, когда случайная опечатка приводит к тому, что код не становится формально неправильным, но существенно меняется его семантика.
Изначально, Ада — модульный язык программирования со строгой типизацией, унаследовавший синтаксис от Паскаль и Алгол. Если вы в «теме», то глядя на «Hello, World!» должны испытать определенную олд-скульную ностальгию:
Нет комментариев