Язык Ада
Язык программирования Ада
назван в честь Августы Ады Байрон (графини Лавлейс
и дочери английского поэта лорда Байрона),
вошедшей в историю компьютерной техники как первый
программист.
Язык был разработан по инициативе и
при содействии военного ведомства США, крупнейшего
потребителя компьютеров и компьютер-ных программ [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.