Copyright (C) А.Гавва V-0.4w май 2004

Некоторые исторические сведения

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

История языка программирования Ада

В 1974 году в Министерстве Обороны США (US Department of Defence / US DoD) осознали, что они теряют много времени, усилий и денег на разработку и сопровождение встроенных компьютерных систем (например, систем наведения ракет).

В это время использовалось около 450 различных языков программирования и/или их расширений. Это увеличивало затраты времени и средств на разработку новых систем и на постоянную техническую переподготовку персонала для обслуживания уже созданных систем. Кроме того, сопровождению существующих систем мешало отсутствие стандартизации в инструментах поддержки (редакторы, компиляторы и т.д.). Все эти факторы привели к тому, что в Министерстве Обороны США осознали необходимость в едином мощном языке программирования, который должен был бы использоваться всеми поставщиками встроенных компьютерных систем.

Работы по разработке были начаты в 1975 году после того как в Министерстве Обороны США был разработан список требований к языку, который был широко распространен. Однако, ни один из существовавших на тот момент времени языков программирования не соответствовал выдвинутым требованиям. В итоге, в 1977 году Министерство Обороны США выдвигает предложение создать новый язык. В отличие от "комитетных языков", таких как КОБОЛ, новый язык был предметом конкурсного пересмотра в широких индустриальных и академических кругах.

Из большого числа предложений было отобрано четыре, для последующего пересмотра и доработки. Позже, для дальнейшего уточнения, из них отобрали два, и в финале выбрали проект представленный компанией Cii-Honeywell Bull. Этому языку и было дано имя Ада, в честь Августы Ады Байрон, графини Лавлейс, дочери английского поэта лорда Байрона. Она была сотрудницей Чарльза Беббиджа, изобретателя аналитической машины, и написала для этой машины программу вычисления чисел Бернулли - Августа Ада по праву считается первым в мире программистом. Разработкой данного проекта руководил Jean Ichbiah.

В 1983 году язык становится стандартом ANSI/MIL-STD-1815A-1983, а затем и международным стандартом ISO 8652:1987. Язык описывается в справочном руководстве по языку (Language Reference Manual), часто называемом LRM. Ссылки на это справочное руководство часто встречаются в книгах, посвященных языку программирования Ада, а также во многих сообщениях об ошибках компилятора. Эта книга часто рекомендуется для прочтения. Хотя читать ее довольно сложно, она является исчерпывающим авторитетным источником в вопросах по языку программирования Ада (была сформирована специальная постоянная группа для выявления противоречий в языке).

Язык претерпел пересмотр при введении нового ISO стандарта в начале 1995 года (ISO/IEC 8652:1995). Этот стандарт исправляет многие упущения и недостатки оригинального языка, и дополняет его многими новыми полезными свойствами.

Для предотвращения размножения множества различных версий языка Ада, в "Ada Joint Program Office" (AJPO) заняли довольно оригинальную позицию - они зарегистрировали имя "Ada" как торговую марку. Таким образом, вы не имеете права распространять компиляторы языка программирования Ада до тех пор, пока они не пройдут тестирование на совместимость. Позднее эти требования были ослаблены, и теперь защищенное название звучит как "Validated Ada".

Результирующий сертификат ратификации (валидированности) ограничен по времени и имеет дату срока истечения. После истечения срока сертификации компилятор не может больше распространятся как ратифицированный, - "Validated Ada", - компилятор языка программирования Ада. Таким образом AJPO убежден в том, что все, в текуший момент распространяемые компиляторы, соответствуют требованиям текущего стандарта.

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

Цели разработки

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

"Язык Ада был разработан учитывая три взаимно перекликающиеся концепции: надежность программирования и сопровождения, программирование как человеческая деятельность и эффективность"

И как примечание к этой фразе, также из руководства по языку программирования Ада:

"Таким образом, читабельности программ придавалось большее значение, чем легкости их написания"

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

Ада избавлена от использования криптованного синтаксиса и обладает более "разговорным" стилем английского языка что значительно улучшает читабельность программ (читабельность - программирование как человеческая деятельность). К тому же, почти все конструкции языка могут быть эффективно реализованы.


Copyright (C) А.Гавва V-0.4w май 2004