ВМ. Турский

Андрей Петрович Ершов

Андрей Петрович Ершов (1931–1988) — известнейший ученый в области информатики, как и многие из его поколения, занялся вычислительным де­лом почти случайно.

Родился в 1931. Осенью 1949 зачислен на физико-технический факультет Московского университета им. Ломоносова. Заметим, впрочем, что «зачис­лен» — слишком просто сказано. Чтобы стать студентом такого престиж­ного факультета, надо было пройти три тура вступительных экзаменов, предназначенных для того, чтобы выделить наиболее ярких и одаренных абитуриентов. Позднее Ершов скажет, что при поступлении им более дви­гал не столько интерес к ядерной физике, сколько желание преодолеть не­вероятные трудности этого жесткого отбора. Вскоре, однако, судьба в лице сталинистской паранойи состроила отвратительную гримасу и распоряди­лась по-своему: факультет подлежал преобразованию в отдельный Физико-технический институт, студенты которого должны были быть не только ис­ключительно талантливыми, но и абсолютно надежными. По тем временам Ершов, детство которого прошло на захваченной немцами во время Второй мировой войны советской территории, был человеком, прошедшим период нацистской оккупации, и не мог считаться полностью надежным. Поэтому в 1950 он был переведен на математический факультет университета, где не­зависимо мыслящий математик С. Соболев открывал новую кафедру вы­числительной математики, куда и был принят Ершов.

Соболев, сотрудничавший также и с Институтом атомной энергии, участвовал в проекте по созданию первых советских вычислительных ма­шин, однако бульшая часть его работы была засекречена, и лишь немногое было доступно для гораздо более свободной университетской публики. А вычислительная математика по-прежнему ограничивалась численными схе­мами, математическими таблицами да щелканьем электромеханических счетных машин. Ситуация несколько изменилась в 1952 г., когда молодой профессор А. А. Ляпунов пришел в соболевскую группу и ввел курс обуче­ния основам программирования на ЭВМ. Для Ершова, с его склонностью бросать интеллектуальный вызов, ляпуновская символика программирова­ния, полная запрещающих знаков и мучительных условностей, должна была показаться как раз райски привлекательной. Тесное сотрудничество Ляпу­нова и Ершова длилось более десятилетия, вплоть до их совместного пере­езда в новосибирский Академгородок, где их пути постепенно разошлись: Ляпунов основал кафедру в университете, а Ершов предпочел работу в Вы­числительном центре Сибирского отделения АН СССР, возглавляемом Г. И. Марчуком — блестящим специалистом в области численного анализа (будущим заместителем премьер-министра СССР и президентом АН СССР). В Вычислительном центре Ершов был руководителем Отделения информатики.

Другим мощным источником компьютерного образования и развития для Ершова был проект «гражданских» компьютеров С. Лебедева, начатый в Киеве, а затем продолженный в Москве, в специально созданном Инсти­туте вычислительных машин. Лабораторию Лебедева часто посещал Ляпу­нов, очень заинтересованный этим проектом. Именно для лебедевских ма­шин БЭСМ и СТРЕЛА в конце 50‑х годов Ершов начал разработку своей «программирующей программы» — так называлась тогда в советской тер­минологии комбинация языка и транслятора.

Окончив в 1954 Московский университет (это был первый выпуск про­граммистов с университетским образованием), Ершов до 1960 работал в Москве. В 1958 он был направлен в Англию на Теддингтонскую конферен­цию по механизации мыслительных процессов. Это было его первое путе­шествие за границу. Именно там он встретился с еще одним дебютантом на международной компьютерной сцене — Джоном МакКарти. С годами эта встреча переросла в дружбу и сотрудничество, практически немыслимые в годы холодной войны. Для поколения, рожденного после того, как самолет Гэри Пауэрса U‑2 был сбит в самом центре русской земли, может показать­ся весьма будничным то, что МакКарти посетил Ершова в Новосибирске в 1965 году; на самом деле он был первым западным визитером, которому было позволено приехать. Спустя три года МакКарти провел там два меся­ца, обучая и общаясь со студентами и преподавателями. Ершов, однако же, не получил разрешения принять ответное приглашение провести семестр в Стэнфордском университете.

Даже несмотря на то, что Ершов ездил на Запад довольно часто и был в дружбе со многими именитыми учеными, практически всю жизнь ему при­ходилось получать выездную визу для каждой поездки, причем он никогда не был уверен, что ее получит. Ему никогда не было дозволено выехать для работы в каком-нибудь зарубежном университете. Его заграничные коман­дировки всегда были кратковременными и вследствие этого до отказа за­полнеными встречами, беседами, семинарами, экскурсиями — в стиле, ха­рактерном для тех людей, которые никогда не знают, придется ли им когда-нибудь еще получить такую же возможность.

Ершов активнейшим образом поддерживал международный научный обмен и сотрудничество. Он постоянно участвовал в различных комитетах и конференциях IFIP, являлся редактором международных журналов “Acta Informatica” и “Information Processing Letters”, организовывал многочислен­ные международные конференции в Новосибирске и других регионах Со­ветского Союза. Выступая как консультант в нескольких советских изда­тельствах, Ершов инициировал (и часто редактировал) большое число рус­ских переводов западных книг по информатике. Установление и развитие личных и профессиональных связей между иностранными учеными и их со­ветскими коллегами было целью, которой Ершов посвятил значительную часть своей завидной энергии.

Осуществив две крупнейших разработки трансляторов — АЛЬФА и БЕ­ТА,— Ершов у себя на родине завоевал репутацию ведущего специалиста в области программного обеспечения. АЛЬФА — это оптимизирующий ком­пилятор для языка типа Алгол. (Его окончательная версия, АЛЬФА‑6, до сих пор в ходу.) БЕТА — это гигантская (как у героев Рабле) многоязыко­вая среда с удивительно элегантной внутренней конструкцией. Ершов очень активно занимался созданием операционной системы коллективного поль­зования АИСТ‑0, а также множеством других практических программных проектов, включая впечатляющую своей проработанностью издательскую систему МРАМОР, выполненную по заказу крупнейшей советской еже­дневной газеты «Правда».

Ершов весьма плодотворно трудился как ученый-исследователь, его ин­тересы простирались от искусственного интеллекта до смешанных вычис­лений (частичных вычислений и трансформационного программирования); что касается последнего, то здесь он снискал международное признание. Его пионерские работы по компиляции с минимальной памятью и по тео­рии программирования (схемы Янова — Ершова) несколько меньше из­вестны в западных странах, однако по достоинству оценены экспертами. В 1985 году он применил новый подход к семантике программы, в соответст­вии с которым фундаментальные понятия программы должны определяться лексиконом программы — постоянно растущим структурированным набо­ром нетривиальных фактов о предметной области программы (объектах), представленным в формальном виде.

Ершов был признанным лидером в области компьютерного программи­рования в Советском Союзе. Он был первым программистом, получившим престижную премию имени Крылова в области математики и ставшим чле­ном-корреспондентом АН СССР в 1970, а в 1980 — ее действительным членом. Наконец, Ершов был избран председателем Научного совета по ки­бернетике при Академии наук — верховного советского органа в области информатики. И он разумно использовал свои влиятельные позиции.

Еще в 1972 г. профессор Ф. Л. Бауэр из Мюнхена написал книжку для детей »Andrei und das Untier« — введение в информатику, очаровательно иллюстрированную рисунками в стиле граффитти, выполненными на основе набросков сына Ершова Василия. Выбор имени главного персонажа книги и места действия — в городе «на полпути между Томском и Ом­ском», двумя сибирскими городами, оказался пророческим.

Полностью сознавая социальные последствия использования компьюте­ров и культурное значение программирования (он называл его «второй гра­мотностью»), Ершов был неутомимым борцом за школьную информатику, за введение курса «Основы вычислительной техники и обработки информа­ции» в доуниверситетское обучение. Самостоятельно (и в соавторстве с другими) он писал школьные учебные планы и учебники, обеспечивал сред­ствами летние компьютерные школы, заведовал учебной телевизионной программой по информатике, «выбивал» компьютеры для школ, читал лек­ции об опасности компьютерной безграмотности как на общественном, так и на правительственном уровне, вплоть до, кажется, успешной встречи с то­гдашним Президентом Горбачевым.

Ершов всецело одобрял раскрепощающую силу персональных компью­теров. Его страстное желание компьютеризировать школу преследовало двойную цель: развить в молодых людях интеллектуальный дар програм­мирования и обогатить их мощью информационной обработки. Трудно пе­реоценить значение этой деятельности, особенно если вспомнить, что эта кампания проводилась в стране, где доступ к простым копировальным ма­шинам был строго ограничен и сурово контролировался.

Взгляды Ершова на программирование, выраженные в серии очерков, начатой в 1972 г. статьей «О человеческом и эстетическом факторах в про­граммировании», привлекли широкое внимание во всем мире. Описывая свою профессию, Ершов говорил:

 

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

...Машина, снабженная программой, ведет себя разумно. В этот кульминацион­ный момент программист, по существу, представляет троицу. Он ощущает себя от­цом — как создатель программы, сыном — как брат машины, выполняющей про­грамму, и носителем святого духа — как тот, кто вложил жизнь в сочетание про­граммы и машины»[1].

 

Типичный представитель русской интеллигенции, Ершов был решитель­но чужд технократии. Он бесконечно любил книги, постоянно читал на рус­ском и английском, с легкостью приводил длинные цитаты из Пушкина и Шекспира, Евтушенко и Киплинга. В 50 лет Ершов сильно увлекся поэзией, вначале — как переводчик с английского, а затем — и как автор. Его стихи — выдержанные в классическом стиле и изобилующие красивыми оборо­тами — глубоко волнующи по силе внутреннего напряжения и обеспокоен­ности созидающего разума ученого. Вот две характерные выдержки из сти­хотворений Ершова[2]:

*  *  *

Я знанье добывал из потаенных мест,

Чтоб человек был жив не только хлебом,

Но сам не ведаю, неся свой тяжкий крест:

Распнут меня иль вознесут на небо.

*  *  *

Что лучше —

              задать самому себе

                           миллион вопросов

Или ответить на один,

              но заданный другими?

*  *  *

В последние годы жизни Ершов вел неравный бой с неизлечимой болез­нью. Активный до последнего вздоха как на научном, так и на политичес­ком поприще, Андрей Петрович умер 8 декабря 1988. По нему скорбит и Восток, и Запад.

Перевод О. П. Симоновой.


[1] Цитаты из неоднократно переиздававшейся как в русском, так и в английском вариантах (с некоторыми разночтениями) статьи «О человеческом и эстетическом факторах в программировании» приводятся по однотомнику избранных трудов А. П. Ершова (Новосибирск: Наука, 1994, с. 41–48) за исключением последних двух фраз, которые отсутствуют в русских публикациях и даны здесь в переводе из пуб­ликации: Andrei P. Ershov. Aesthetics and the Human Factor in Programming // Data­mation, 1972, vol. 18, No. 7,  p. 62–64, 66, 67.— Сост.

[2] Отрывки из стихотворений А. П. Ершова «Неведенье» и «Вопросы» приводятся по сборнику, изданному его коллегами (А. П. Ершов. Стихи. Академгородок: Ин­ститут систем информатики, 1991, с. 9, 17).— Сост.

© The Institute of Electrical and Electronics Engineers, Inc., 1993.

Перевод © О. П. Симонова, 1998.

Оригинал: Władysław M. Turski. Obituary: Andrei Petrovich Ershov // IEEE Annals of the History of Computing, 1993, Vol. 15, No. 2, pp. 55–58.