Язык Ада
Язык программирования Ада назван в честь Августы Ады Байрон
(графини Лавлейс и дочери английского поэта лорда Байрона), вошедшей в историю
компьютерной техники как первый программист.
Язык был
разработан по инициативе и при содействии военного ведомства США, крупнейшего
потребителя компьютеров и компьютер-ных программ [1—6]. Исследования,
выполненные в начале и середине 1970-х годов, показали, что если Пентагон будет
использовать единый язык программирования для решения всех своих задач вместо
примерно 450 языков и их диалектов, то появится возможность получить огромную
экономию средств (около 24 млрд долл. за период с 1983-го по 1999 год)
[1].
В результате проведенных исследований были выработаны
требования к новому языку программирования, способному заменить большинство
языков, используемых специалистами военного ведомства. Документ с этими
требованиями получил условное название “Соломенный”. Выбор названия был не
случаен: подразумевалось, что рецензенты “потреплют” документ и предложат
сделать ряд изменений.
Документ широко обсуждался в
течение нескольких лет как в США, так и в других странах, и на каждой стадии
обсуждения получал название, которое как бы отмечало прогресс в упрочении
требований: “Деревянный”, “Оловянный”, “Железный”, “Пересмотренный железный” и,
наконец, ”Стальной” [1, 2].
В 1977 году был организован
международный конкурс, причем его участникам разрешалось брать в качестве основы
для нового языка только один из трех языков: ПЛ/1, Алгол-68 или Паскаль. Около
пятнадцати групп разработчиков из разных стран подали свои предложения, из
которых сначала были отобраны четыре (все — базирующиеся на Паскале), а затем,
на основе оценок более четырехсот рецензентов, два. Победителя объявили в мае
1979 года. Им стал язык программирования, созданный международной группой
специалистов под руководством Жана Ихбиа. Этот язык получил название
Ада.
Жан Ихбиа родился в Париже, учился в знаменитой
Политехнической школе и через какое-то время после ее окончания отправился
продолжать обучение в США. При подготовке диссертации по теме, связанной с
оптимальным размещением систем метро, он так увлекся программированием, что с
трудом закончил свою работу. Вскоре Ихбиа поступил на службу в новую французскую
компанию CII (превратившуюся позже в CII Honeywell Bull), где в 1972 году
разработал свой первый язык программирования. Данный язык, сформированный “под
влиянием” Паскаля, и послужил главной основой для языка
Ада.
Победа далась нелегко. Временами Ихбиа работал по 100
часов в неделю, совершенствуя проект [2], причем часто при принятии решений он
полагался на свою интуицию, а не на логический анализ.
Главная особенность языка Ада — акцент на структурное программирование. Язык
позволяет составлять программы в виде самостоятельных модулей, которые могут
разрабатываться разными программистами, а затем собираться вместе. Сторонники
Ады утверждали, что такая модульная схема дает возможность создавать надежные и
удобные для чтения программы, что способно привести к экономии тысяч часов и
сотен миллионов долларов. В то же время “поклонники” языка понимали, что за эти
его достоинства придется платить. Поскольку язык создавался в соответствии с
правительственным документом “Стальной”, отражавшим требования и пожелания
огромного количества людей, он имел много особенностей, осложняющих его освоение
[2, 7]. Кроме того, компилятор Ады занимал гораздо больший объем памяти, чем
компилятор ее предшественника, Паскаля. Большие размеры и сложность языка
вызвали критику специалистов, в частности, автора Паскаля Никлауса Вирта.
“Слишком много всего вываливается на программиста, — говорил он. — Я не думаю,
что, изучив треть Ады, можно нормально работать. Если вы не освоите всех деталей
языка, то в дальнейшем можете споткнуться на них, и этоприведет к неприятным
последствиям” [2]. Защитники Ады утверждали, что единственная альтернатива
такому большому и сложному языку в больших проектах — это значительное
количество компактных, простых и, конечно, несовместимых языков (а именно от
этого Ада и была призвана “излечить”).
Несмотря на все
трудности, через некоторое время доработанный язык Ада стал заявлять о себе. В
1983 году он был принят в качестве стандарта ANSI (American National
Standards Institute — Американский национальный институт стандартов). Тем не
менее “за пределами” программ, используемых военными (в частности,
американскими), успехи языка Ада являются весьма умеренными [2,
3].
Одной из последних версий языка является Ада-95.
Литература
1. Джехани Н. Язык Ада: Пер. с англ. М.: Мир,
1988.
2. Язык компьютера: Пер. с англ. М.: Мир,
1989.
3. Универсальный язык — возможно ли это? (Сб.
статей) // Новое в жизни, науке, технике. Сер. “Вычислительная техника и ее
применение”, № 8/88.
4. Алексеев Е.С., Мячев А.А.
Англорусский толковый словарь по системотехнике ЭВМ. Для пользователей ПЭВМ. М.:
Финансы и статистика, 1993.
5. Пройдаков Э.М.,
Теплицкий Л.А. Англо-русский толковый словарь по вычислительной технике,
Интернету и программированию. 2-е изд., испр. и доп. М.: Издательско-торговый
дом “Русская редакция”, 2000.
6. Толковый словарь по
вычислительной технике (Microsoft Corporation): Пер. с англ. М.: Издательский
отдел “Русская редакция” ТОО “Channel Trading Ltd”, 1995.
7. Брябрин В.М. Программное обеспечение персональных ЭВМ. М.: Наука,
1988.