ХРОНИКА И ИНФОРМАЦИЯ У
НИКЛАУС ВИРТ - ПОЧЕТНЫЙ ДОКТОР САНКТ-ПЕТЕРБУРГСКОГО ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ, МЕХАНИКИ И ОПТИКИ
Язык должен быть очевидным и естественным отражением фундаментальных и наиболее важных концепции алгоритмов.
Н.Вирт
Приезд Никлауса Вирта в Россию приурочен к празднованию 250-летия МГУ и 150-летия швейцарского ETN (Eidgenoessische Technische Hochschule) - Высшей Политехнической школы в Цюрихе.
Однако этот визит начался с посещения Санкт-Петербурга, и это не случайно - у нашего Великого города давние научные связи со Швейцарией. Еще в XVIII веке в Санкт-Петербурге жил и работал великий Леонард Эйлер, похороненный в Некрополе Александро-Невской лавры, именем которого Вирт назвал свой первый язык. В Санкт-Петербурге в течение уже многих лет работает Международный математический институт им. JI. Эйлера.
Организатором приема профессора Н. Вирта, а также его соавтора и единомышленника профессора Юрга Гутхнехта в Санкт-Петербурге стала лаборатория «Технологии программирования» Санкт-Петербургского государственного университета информационных технологий, механики и оптики (СПбГУ ИТМО) и Санкт-Петербургский филиал корпорации Borland. Эти организации многим обязаны Н. Вирту, разработавшему в 1970 г. язык Пас-кал ь, применение которого обеспечивает «дисциплину программирования »1. Несмотря на возможность использования на командном студенческом чемпионате мира по программированию ACM ICPC (Association for Computing Machinery Internatinal Collegiate Programming Contest) таких языков, как C/C++ и Java, команды СПбГУ ИТМО успешно применяют именно язык Паскаль.
При этом отметим, что по результатам последнего десятилетия СПбГУ ИТМО занимает второе место среди тысяч принимающих участие в чемпионате мира университетов2, а в 2004 г. команда универси-
1 Дейкстра Э. Дисциплина программирования. М.: Мир, 1978. http: lib.ru CTOTOR' DE-JKSTRA
1 Богатырев Р. Нас не догонят? Триумф России и провал США //Мир ПК. - 2005. - № 5. - С. 60-67. http: ' / is.ifnio.ru/belIetristic/ acni2005.pdf
тета ИТМО стала чемпионом мира3. Возможно, это связано с тем, что в слове алгорИТМОв присутствует название нашего университета? Не следует также забывать, что в 2000 и 2001 гг. чемпионами мира была команда Санкт-Петербургского государственного университета (СПбГУ), которая в рейтинге за последнее десятилетие занимает третье место в мире. Это «способствовало тому, что центр подготовки лучших программистов страны сместился из Новосибирска и Москвы в Санкт-Петербург»1.
Для корпорации Вог1апс1 язык Паскаль- это их «все», так как практически любой программист мира, по крайней мере, слышал о таких продуктах корпорации, как ТигЬо Разса1, Вог1ап(1 Равса1, Ое1р1г1. Последний из этих продуктов, который создан 10 лет назад и непрерывно совершенствуется, является самым востребованным в России. На протяжении последних лет он неизменно занимает верхнюю строчку в реш инге « Л учпп ш продукт года » -ежегодном опросе читателей журнала «Мир Г1К».
СПбГУ ИТМО и Вог1апс1 уделяют большое внимание школьному образованию. Поэтому визит Н. Вирта 13 сентября 2005 г. начался с посещения физико-математического лицея № 239, который Дж. Сорос назвал лучшей школой мира. Ее окончили, кстати, не только А. В. Иванов (директор Санкт-Петербургского филиала корпорации Вог1апс1) и профессор В. Г. Парфенов (декан факультета информационных технологий и программирования СПбГУ ИТМО, лауреат премии Президента РФ в области образования), но двое из наших чемпионов мира - С. Оршанский и Д. Павлов, и все чемпионы мира из СПбГУ-А. Лопатин, Н. Дуров, О. Етеревс-кий и В. Петров. Кроме того, ежегодно в каждой группе на кафедре компьютерных технологий СПбГУ ИТМО примерно половина студентов - вы-
Богатырев Р. К истории чемпионатов мира ACM по программированию //Мир ПК. - 2004. - № 7. - С. 48-51. http://is.ifino.ru 'belletristic/ acmhist.pdf
1 http:1 www.oberoii2005.ru
пускники этого лицея. Встреча с Н. Виртом состоялась утром, в актовом зале школы. Учащихся было столько, что, как говорят в таких случаях, «не сидели только на люстрах». Классика программирования встретили овацией и стоя, а после его выступления так же проводили. Примерно пят-надцать минут Вирт уделил раздаче автографов на русских изданиях своих книг. «Эквакуировать» профессора из школы удалось не без значительных усилий со стороны руководителей приема.
После этого Н. Вирт и Ю. Гутхнехт прибыли в СПбГУ ИТМО, где состоялось расширенное заседание Ученого совета, на котором Н. Вирту вручался диплом и мантия почетного доктора университета ИТМО. 28 июня 2005 г. по моему представлению за это единогласно проголосовали все члены Совета.
Проректор университета профессор Ю. Л. Колесников представил гостям профессора В. Г. Парфенова, а также В. Л. Макарова - Президента Российской национальной ассоциации компаний - разработчиков ПО, в которую входят около ста программистских организаций, Т. А. Павловскую и А. А. Шалыто - профессоров СПбГУ ИТМО, А. С. Станкевича - ассистента кафедры компьютерных технологий, лауреата Премии Президента РФ в области образования, полученную им за подготовку команд и личное участие в чемпионатах мира по программированию, П. Маврина - чемпиона мира 2004 г., золотого медалиста чемпионата 2005 г., лауреата Премии Президента РФ, которую он получил за блестящие результаты, достигнутые на международной олимпиаде школьников по информатике.
После знакомства, фотографирования и получения автографов на книгах Н. Вирта и книгах о его языках все перешли в актовый зал, в котором количество людей, особенно молодых, нас поразило. Нечто подобное в стенах вузов я видел лишь однажды в 60-х годах, когда в ЛЭТИ, где я учился, приезжал Владимир Высоцкий. Снова, как и в школе, Н. Вирта встретили овацией и стоя.
В зале присутствовало огромное число студентов не только нашего вуза, но и многих других университетов Санкт-Петербурга. Люди стояли в проходах и у сцены.
Встреча открылась кратким приветственным словом профессора Ю. Л. Колесникова. После этого прозвучал гимн университета ИТМО, и мне было предоставлено слово для сообщения о жизни и творчестве Н. Вирта.
В начале своего выступления я сказал, что 28 июня, представляя Н. Вирта Ученому совету, я пояснял для не специалистов в области информатики, кто такой Н. Вирт, проведя сравнение его с Рафаэлем. Однако мне представляется, что в живописи титанов было значительно больше, чем в информатике. Об этом, в частности, свидетельствует галерея портретов основоположников информатики, опубликованная в этом году в нескольких номерах газеты для учителей «Информатика» (по два портрета в каждом номере). В этой галерее есть и портрет Н. Вирта.
После этого я кратко перечислил основные вехи биографии Н. Вирта. Родился 15 февраля 1934 г. в предместье Цюриха. В1954 г. поступил в Высшую Политехническую школу в Цюрихе (ЕТН), в которой, говорят, учились и (или) работали 30 (!) Нобелевских лауреатов. Точно известно, что в этом университете учились такие гиганты науки, как А. Эйнштейн и Дж. фон Нейман. В 1958 г. Н. Вирт получил степень бакалавра по электротехнике; в I960 г. -степень магистра в Лавальском университете г. Квебека (Канада); в 1963 г. - первый важный результат в информатике - создание на базе языка Алгол языка Euler, которой составил основу его докторской диссертации в университете Беркли (Калифорния США). После этого его пригласили в комитет IFIP по стандартизации Алгола. С 1963 по 1967 гг. Н. Вирт - доцент Стэнфордского университета в США; с 1968 г. - профессор компьютерных наук в ЕТН; в 1982-1984 гг. и 1988-1990 гг. возглавлял факультет компьютерных наук в ЕТН; с 1990 г. руководил Институтом компьютерных систем в ЕТН. 1 апреля 1999 г. Н. Вирт ушел с сохранением должностного оклада на пенсию по достижению 65-летнего возраста, так как ЕТН - вуз государственный, а для государственных служащих указанный срок предельный.
Основные достижения Н. Вирта в информатике:
1970 г. - создание языка Паскаль - первого в мире языка, в котором реализованы концепции структурного программирования;
1971 г. - публикация одной из основополагающих статей по структурному программированию « Разработка программы методом пошагового уточнения»1, которое он создал вместе с теоретиками программирования Э. Дейкстром и Э. Хоаром2.
1973 г. - участие в создании прообраза виртуальной машины для переноса языка Паскаль на разные платформы;
1976 г.- создание языка Modula, в котором были заложены основы мультипрограммирования;
1979 г.- создание языка Modula-2, поддерживающего концепцию модульности и квазипараллель-ных процессов;
1980 г. - создание 16-разрядного компьютера (!) Lilith, ориентированного на поддержку языка Modula-2;
1988 г. - создание языка ОЪегоп, являющегося « минимальным» языком высокого уровня;
1996 г. - создание языка Lola для программирования настраиваемых схем (!).
Н. Вирт движется против течения - если у всех языки программирования со временем усложняются, то у него упрощаются: описание Паскаля занимало около 50 страниц, Modula - около 40, а Обе-рона - и вовсе 16... За это низкий поклон их автору.
Заслуги профессора Н. Вирта отмечены большим количеством наград, в том числе в 1984 г. премией
1 http://www.acm.org/classics/dec95/
2 Дал У., Дейкстра Э., Хоар Э. Структурное программирование. - М.: Мир, 1975.
Тьюринга, присуждаемой ACM за выдающиеся достижения в области информатики1, а в 1988 г. - премией IEEE Computer Pioneer, которой среди 55 лауреатов также награждены и советские ученые В. М. Глушков, С. А. Лебедев и А. А. Ляпунов2.
Н. Вирт - почетный доктор девяти университетов мира, в том числе такого известного, как университет Беркли (Калифорния, США), в котором он работал. Университет ИТМО - второй вуз в России, который присваивает Н. Вирту это почетное звание -в 1996 г. его избрали почетным доктором Новосибирского государственного университета.
В СССР и России книги Н. Вирта издавались неоднократно. Вот только некоторые из них:
• Систематическое программирование. Введение. М.: Мир, 1977.
• Паскаль. Руководство для пользователя и описание языка. М.: Финансы и статистика, 1982 (в соавторстве с К. Иенсен).
• Алгоритмы + структуры данных = программы. М.: Мир, 1985.
• Программирование на языке Модула-2. М.: Мир, 1987.
• Алгоритмы и структуры данных. СПб.: Невский диалект. 2001.
К визиту в нашу страну Н. Вирта выпущен диск, являющийся приложением к журналу «Мир ПК», 2005, № 9, который называется «От Паскаля к Обе-рону». Тираж диска более 50 тыс. экземпляров, что делает доступным творчество Н. Вирта для широкого круга лиц в нашей стране. На этом тематическом диске есть большой материал С. Оршанского (третьего участника звездной команды университета ИТМО) «О решении олимпиадных задач по программированию формата ACM ICPC»3, который я «заставил» его написать.
На этом закончилось мое выступление, и слово было предоставлено А. В. Иванову, который достаточно подробно описал роль Н. Вирта и его языков в успехах корпорации Borland.
Потом выступил В. Л. Макаров, отметивший большое значение сегодняшнего события для всех присутствующих, особенно для молодых людей, которые со временем должны обеспечить лидерство России в области программирования в мире.
В. Г. Парфенов поблагодарил профессора Н. Вирта за язык Паскаль, который в «руках» студентов университета ИТМО стал сокрушительной силой на чемпионатах мира по программированию.
После этого П. Маврин и Д. Павлов вручили Н. Вирту футболку, в которой выступают участники чемпионатов мира по программированию.
И вот, наконец, наступил момент, когда под фанфары и овации зала профессор Ю. Л. Колесников
1 Лекции лауреатов премии Тьюринга за первые двадцать лет 1966-1985. М.: Мир, 1993.
2 Шалыто А. А. У нас была Великая эпоха // Информа-ционно-управляющие системы. - 2003. - № 1. - С. 52-56. http://is.ifmo.ru/belletristic/pre/
3 http://is.ifmo.ru/works/orshanskiv
вручил профессору Н. Вирту диплом и мантию Почетного доктора университета ИТМО. Видели бы вы, сколько студентов фотографировали этот момент!
После этого профессор Н. Вирт начал свое выступление и зачитал две страницы ... по-русски, рассказав, как он учил этот непростой язык.
Хочу отметить, что в ЕТН для профессоров компьютерных наук знание русского языка, видимо, становится необходимым: сменивший Н. Вирта профессор Бертран Мейер (Bertrand Meyer), создатель языкаEffel, также знает русский язык, причем практически в совершенстве.
В дальнейшем прозвучала докторская лекция Н. Вирта на английском языке, поскольку аудитории, ввиду ее специфики, не потребовался перевод. По окончании лекции многие студенты получили автограф классика на его книгах.
В этот день в университете ИТМО классик был не только на сцене, но и в зале - Н. Вирта пришел слушать член-корреспондент РАН Юрий Владимирович Матиясевич, также выпускник 239 школы, который, будучи аспирантом Ленинградского государственного университета, решил десятую проблему Гильберта, о чем и было объявлено в зале.
Праздник закончился, но Н. Вирт продолжил работу - он и профессор Ю. Гутхнехт приняли участие в пресс-конференции, на которой я, в частности, спросил: « Почему язык ОЪегоп, если он такой хороший, так мало известен? ». На это профессор Ю. Гутхнехт не без иронии ответил: «Люди получают то, что заслуживают», - и предложил приз любому, кто предложит задачу, которую нельзя будет достаточно эффективно решить на этом языке.
В ответах на вопросы Н. Вирт отметил высокое качество образования в нашей стране, и особенно наличие элитных (в смысле высокого интеллекта учащихся и учителей) школ, которые, к примеру, в Швейцарии отсутствуют. Он также заметил, что все его разработки являются открытыми, так как университеты должны нести знания людям.
После завершения пресс-конференции у меня было некоторое время, чтобы рассказать профессорам Н. Вирту и Ю. Гутхнехту о предложенных мною автоматном программировании4 и движении за открытую проектную документацию5, но это уже совсем другая история.
Встреча не успела закончиться, а большой ее фрагмент показали по НТВ - визит Н. Вирта не только профессиональное, но и значительное общественное событие.
Шалыто А.А.,
доктор техн. наук, профессор, заведующий кафедрой «Технологии программирования»
СПбГУИТМО.
4 Шалыто А. А., Шопырин Д. Г. Объектно-ориентиро-ванный подход к автоматному программированию // Ин-формационно-управляющие системы. - 2003. - № 5. - С. 29-39. http://is.ifmo.ru/works/ooaut.pdf.
5 Шалыто А. А. Новая инициатива в программировании. Движение за открытую проектную документацию / / Информационно-управляющие системы. - 2003. - № 4. - С. 52-56. http://is.ifmo.ru/works/open doc/