Романтические 1960-е годы положили начало дружбе трех патриархов структурного
программирования: голландца Эдсгера Дейкстры, англичанина Энтони Хоара и швейцарца
Никлауса Вирта. Все они в разные годы (соответственно, в 1972, 1980 и 1984 гг.)
становились лауреатами самой престижной премии в компьютерном мире — ACM Turing Award
(премии им. Алана Тьюринга). Она считается эквивалентом Нобелевской премии и вручается
всего один раз в жизни лишь избранным из избранных.
Профессор Никлаус Вирт (Niklaus Wirth, р.1934 г.) — один из самых авторитетных в мире
ученых в области компьютерных наук (computer science). Его имя как автора знаменитого
языка Паскаль (1970) известно многим. Менее известен его выдающийся вклад в развитие
ИТ-индустрии, который был сделан в период после 1970 г. Хотя в действительности именно
эти годы стали золотым периодом его творчества.
Вирт — автор языков Euler, Algol W, PL360, Pascal, Modula, Modula-2 и Оберон, причем для
них писал очень эффективные компиляторы. Его самый первый язык Euler очень высоко
оценивает Алан Кей, автор языка Smalltalk и один из основоположников
объектно-ориентированного программирования. Modula-2 стал блестящей альтернативой языку
Ada и до сих пор активно используется в нашем военно-промышленном комплексе и в разработке бортового программного
обеспечения для отечественных спутников связи.
Вершиной творчества Вирта стал язык Оберон, названный так в честь самого дальнего спутника
Урана, мимо которого в 1986 г. пролетал американский аппарат Voyager-2. А само имя этой
малой луне было дано в честь короля эльфов из знаменитого произведения Вильяма Шекспира
"Сон в летнюю ночь" (все кратеры на Обероне названы по именам персонажей Шекспира — Гамлет,
Ромео, король Лир, Антоний, Фальстаф, Макбет, Отелло, так что Оберон посвящен и памяти
великого английского драматурга).
Созданная почти два десятилетия назад система Oberon играет в наши дни приблизительно ту
же роль, что в начале 1980-х годов играли проекты Alto и Xerox Star знаменитого центра
Xerox PARC, откуда взяли начало современные персональные компьютеры, текстовые редакторы и
графический интерфейс (GUI). Для ИТ-индустрии проект Oberon, инициированный осенью 1985 г.,
стал источником плодотворных идей, среди которых можно выделить документо-ориентированный
интерфейс, браузеры, промышленные языки разработки ПО (Java и C#), машинно-независимый
мобильный код (JVM и .NET CLR), аплеты, компонентное ПО, динамическую компиляцию
(JIT, AOC, DAC), смарт-теги, веб-службы и др.
Коллеги и ученики Вирта работают на передовых рубежах ИТ-индустрии. В частности, Клеменс
Шиперски — ведущий специалист Microsoft Research и идеолог компонентного программирования,
а Микаэль Франц — автор технологии динамической компиляции, первой реализации и самого слова
'аплет', ныне работающий для американского ВПК. Его разработки в 1994 г. были взяты за
основу при создании технологической платформы Java.
Языки Оберон-семейства несмотря на малую известность взяты на вооружение ведущими компаниями
мира и прекрасно себя зарекомендовали в ответственных ИТ-проектах. Американское космическое
агентство NASA, европейский военно-промышленный комплекс (BAE Systems, DuPont Ballistic
Lab), ядерная физика (проекты CERN), крупнейшие банки (Royal Bank of Canada, Swiss Re),
специальный инструментарий для конструкторских бюро автомобильного гиганта BMW, средства
лазерной топографии (Optech), система управления крупнейшим в мире каскадом ГЭС на Амазонке
(Alstom Power), федеральная система управления дорожным движением в Швейцарии — вот лишь
некоторые примеры использования языков Оберон-семейства в сегодняшнем индустриальном мире.
В последние годы Никлаус Вирт занимается ревизией своего творческого наследия и адаптирует
бестселлеры "Алгоритмы и структуры данных" и "Программирование на Modula-2" для языка Оберон,
который можно назвать настоящим эсперанто программирования. Уникальность этого языка в том,
что он проще Паскаля и Modula-2, легко воспринимается программистами и при этом позволяет
создавать системы практически любого уровня сложности, которые по своим характеристикам
превосходят разработки на ведущих промышленных языках программирования.