ЮБИЛЕИ

19 апреля 2006 г. исполнилось 75 лет со дня рождения Андрея Петровича Ершова. Он был одним из пионеров отечественного программирования и стал его лидером - ученым, влияние которого на становление и развитие этой дисциплины было значительным и определяющим. Ниже мы публикуем одно из последних публичных выступлений Игоря Васильевича Поттосина (1933-2001), ближайшего соратника, ученика и друга А. П. Ершова. Этот доклад И. В. Поттосин прочел на Мемориальном заседании, посвященном 70-летию А.П. Ершова, во время 4-й международной конференции "Перспективы систем информатики" летом 2001 г. в новосибирском Академгородке.

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

Становление А. П. Ершова как ученого по времени совпало со становлением программирования как науки - в этом специфика его научного пути. Начальной точкой возникновения отечественного программирования следует считать 1950 г., когда появился макет первой советской ЭВМ МЭСМ (и первой ЭВМ в континентальной Европе). Ершов связал свою жизнь с программированием двумя годами позже, когда стал специализироваться на кафедре вычислительной математики мехмата Московского университета. Он принадлежал к первому в СССР выпуску дипломированных специалистов по программированию - так же как и его однокашники Э. З. Любимский, В. С. Штаркман, И. Б. Задыхайло, В. В. Луцикович, О. С. Кулагина, Н. Н. Рикко и др. Ершов, впрочем, мечтал быть физиком, и только стечение обстоятельств вынудило его пойти учиться на мехмат. Следует заметить, что именно интерес к физическому устройству ЭВМ и привел Ершова на кафедру вычислительной математики - единственную кафедру на мехмате, где такое устройство изучалось.                                                                                                                                 

Ершов как один из пионеров программирования в полной мере испытал трудности становления этой дисциплины. Его кандидатская диссертация, законченная в 1959 г. и посвященная такой модели программ, как операторные алгоритмы, была защищена только в 1962-м. "Чистые" математики не могли понять ценности предлагаемой модели, хорошо отражающей существенные свойства реальных программ. С постоянной оппозицией молодому ученому приходилось сталкиваться и при осуществлении знаменитого Альфа-проекта*1. Многие не могли понять, зачем коллектив высококвалифицированных программистов, вместо того чтобы писать очень нужные прикладные программы, занялся созданием какого-то транслятора - вещи и бесполезной, и нереальной по самому своему замыслу: не может процессор, работающий с языком типа Алгол, создавать программы, которые по качеству были бы близки к тому, что пишется вручную.

_____

*1 Альфа-проект связан с созданием первого в мире оптимизирующего транслятора с языков типа Алгол. - Прим. ред.

Как и у подавляющего большинства пионеров в области программирования, первые научные результаты Ершова связаны с вычислительными задачами. Его первая работа, опубликованная в 1958 г. в сборнике докладов Академии наук, называлась "Об одном методе обращения матриц", но Андрей Петрович не был бы программистом, если бы сам не написал стандартную программу, реализующую этот предложенный им метод на БЭСМ*1. Однако с появлением идей, связанных с внутренними программистскими проблемами, он полностью ушел в новую, неизведанную область - языки и системы программирования. Ершов принадлежит к числу основных разработчиков "программирующей программы" для БЭСМ - одного из первых отечественных трансляторов. Его основополагающие идеи стали составляющими фундамента концепций языков и методов трансляции. Он первым (во всяком случае в нашей стране) предложил такую языковую конструкцию, как цикл, и такой метод, как функция расстановки (хэш-функция). Им была написана первая в мировой практике монография по трансляции - "ПП для БЭСМ", ставшая широко известной: русское издание - 1958 г., английское и китайское - 1959-й.

_____

*1 БЭСМ - большая электронная счетная машина.

С самых ранних своих работ Ершов становится одним из ведущих мировых ученых в области языков программирования и языковых процессоров. Предложенные им идеи и опыт задуманных и руководимых им проектов - первого оптимизирующего транслятора АЛЬФА с языков типа Алгол, первого кросс-транслятора АЛГИБР, транслятора АЛЬФА-6 для ЭВМ БЭСМ-6, многоязыковой транслирующей системы БЕТА - стали составной частью современного фундамента трансляции. Методы оптимизации памяти, зачатки методов анализа программ, понятие внутреннего языка как семантического представления программ, предназначенного для целей их оптимизации или кросс-компиляции, унифицированная схема трансляции - вот его личный вклад в этот фундамент. Даже такой проект, как БЕТА*1, долговременный и не до конца решивший поставленные задачи, сыграл огромную роль в разработке методики трансляции - и в определении внутреннего языка, и во влиянии опыта этого проекта, как положительного, так и отрицательного, на последующие многоязыковые системы.

_____

*1 Некоторые ехидные коллеги расшифровывали это название как Большая Ершовская Трансляторная Авантюра; оттенок истины здесь присутствовал: проект был действительно большим и в чем-то авантюрным.

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

Особое место в его деятельности занимает проект АИСТ. Здесь Ершов выступал как руководитель работ по созданию всей вычислительной системы - и ее архитектуры, и ее программного обеспечения. Начальный этап этого проекта - АИСТ-0 - представлял собой одну из первых отечественных мультипроцессорных систем с богатым ПО, реализующим различные режимы обслуживания - от пакетного до разделения времени. Проект АИСТ проходил практически одновременно с другими работами у нас и за рубежом по созданию развитых ОС - прототипов современных операционных систем (Multics, ОС ИПМ и др.). Однако он был прерван, и последующие его этапы не были реализованы из-за принятия (по всей видимости, ошибочной) национальной программы, о которой Эдсгар Дейкстра как-то сказал: "Наибольшей победой Запада в "холодной войне" было то, что Советский Союз принял архитектуру IBM".

Ершовым был предложен ряд фундаментальных терминов русского программистского языка - "информатика", "программное обеспечение", "технология программирования" и др. В работе 1984 г. "О предмете информатики", опубликованной в "Вестнике Академии наук", он очерчивает контуры новой науки, ее смысл и предмет изучения. Он дал термину "информатика" более широкое толкование, чем то, что вкладывается в его традиционный английский эквивалент "Computer Science", а именно - как фундаментальной естественной науки, изучающей процессы передачи и обработки информации.

Андрею Петровичу принадлежит великолепная и в чем-то уникальная книга - "Введение в теоретическое программирование. Беседы о методе". Особая значимость этой книги в том, что там ясно показывается, как на основе рассмотрения практических проблем возникают теоретические модели, позволяющие решать практические задачи. Книга издана в 1977-м, а программистские монографии, как мы хорошо знаем, быстро стареют. Но эта монография оказалась вне общего правила: в 1990-е годы вышел ее английский перевод.

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

А. П. Ершов был лидером и в общественной программистской жизни: организатором совещаний и конференций, отечественных и международных, руководителем всесоюзных комиссий и комитетов, проводником международных связей, создателем информационных потоков (в частности, им оставлен такой значительный след, как Мемориальная библиотека при ИСИ СО РАН).

Его безусловное и всеми признаваемое лидерство связано и со свойствами его личности. Он обладал истинной стратегией мышления, предвидя будущность только что возникшего явления, прекрасно видел точки роста. Как никто другой из известных мне людей, Ершов умел радоваться чужим идеям. Он всегда охотно оказывал помощь и поддержку своим коллегам. Для многих поддержка Ершова была весьма существенной - это и эстонец Тыугу, и грузин Цуладзе, и украинец Вельбицкий, и молдаванин Тодорой, и петербуржец Терехов, и многие, многие другие.

Андрей Петрович Ершов был и одним из пионеров, и лидером отечественного программирования. И если первому во многом способствовало время, то второму - собственные заслуги, величина и значимость его личности.

Версия для печати