Русский      English

Спогади1 Дональда Кнута2 про Андрія Єршова3

Редактори попросили мене записати деякі з моїх особистих спогадів про Андрія Єршова. Хоча ми з Андрієм жили на різних кінцях Землі і нас розділяло майже 12 годинних поясів, його життя вплинуло на моє дуже позитивно.

Це почалося ще коли я був студентом останнього курсу інституту Case Institute of Technology. Тоді тільки з'явилася книга Андрія "Программирующая программа для электронной вычислительной машины БЭСМ", і ми, група студентів, змогли переконати викладача російської мови включити її до курсу у якості одного з двох збірників текстів для вивчення наукової лексики. Для нас це був чудовий досвід роботи, оскільки багато технічних комп'ютерних термінів не можна було знайти в наших словниках, і навіть викладач деякі з них раніше узагалі не чув! (Виконаний Недлером переклад на англійську мову тоді ще не було видано.) Ми відчули, що бачимо "справжню" російську мову в тому вигляді, у якому вона дійсно використовується в науці; книга нас вразила набагато більше, чим інший текст, у якому говорилося про супутники і дослідження космосу, але на дуже примітивному рівні.

Ця книга не тільки допомогла мені краще освоїти російську мову; з неї я довідався цікаві алгоритми оптимізації компілятора. Насправді рання робота Андрія, що послужила поштовхом до створення цієї важливої області комп'ютерної науки, дотепер викликає інтерес. Його метод викладення матеріалу також виявився дуже значимим: блок-схеми, представлені вперше в його книзі, я згодом використовував для ілюстрації процесу виконання програми у своїй статті Computer-drawn flow charts ("Блок-схеми, побудовані комп'ютером"), виданої в Communications of the ACM, вересень 1963, стор. 555-563) і наступної серії книг "Мистецтво програмування".

Перша особиста зустріч з Андрієм відбулася на конференції робочої групи IFIP, де готувався спадкоємець мові Algol-60. На той час я довідався, що Андрій незалежно від Джина Амдала винайшов хешировання з лінійним числом випробувань - важливий алгоритм, вивчення якого стало поворотним моментом мого життя, оскільки привело мене в область алгоритмічного аналізу. (Див. виноску на стор. 529 у моїй книзі Sortіng and Searchіng ("Сортування і пошук"); у російському перекладі ця виноска знаходиться на стор. 628). Я чув про нові методи, що входять до складу проекту мови Alpha, що вів Андрій. Тому я був дуже радий можливості зустрітися з ним особисто, тим більше що, як з'ясувалося, він вільно володіє англійською мовою. Ми проговорили біля двох годин про компілятори і мови, поки він копіював на ксероксі численні документи для цієї конференції.

Згодом ми змогли частіше з ним бачитися, оскільки він регулярно приїжджав на зустрічі з Джоном Маккарті в Стенфордський університет. Один з таких візитів став першопричиною, мабуть, самої пам'ятної для мене події - моєї участі в конференції Аlgоrуthms іn Modern Mathematics and Computer Science ("Алгоритми в сучасній математиці і комп'ютерній науці"), що відбулася в СРСР в Ургенчі в 1979 році. Ця конференція - паломництво вчених до святих місць, до місця народження самого поняття "алгоритм" - для мене була мрією, що стала дійсністю. Хоча ми з Андрієм офіційно значилися співголовами конференції, насправді Андрій узяв на себе 99% роботи, у той час як я міг відпочивати і насолоджуватися тим, що відбувається, дізнаючись багато важливого від людей, з якими тут зустрічався. Таке буває раз у житті, і я сподіваюся, що багато вчених, що працюють в області комп'ютерних наук, зможуть прийняти участь в аналогічній зустрічі, якщо хтось надихнеться прикладом Андрія. За цей тиждень я познайомився з ним набагато краще і був особливо уражений тим, наскільки блискуче він справлявся з усіма численними ролями: керівника конференції, організатора, філософа, оратора, перекладача і редактора.

У мене є чимало інших спогадів, у тому числі і про чудовий випадок, коли ми з дружиною зустріли Андрія на вечорі американської кадрилі і він виконував Vіrgіnіa Reel і "до-сі-до", але того, що вже сказано, цілком достатньо, щоб зрозуміти, наскільки важливу роль у моєму житті зіграв Андрій.

Під час його останнього візиту в Стенфорд я довідався про величезну роботу, що він вів в останні роки життя, про революційні зміни у викладанні комп'ютерних наук мільйонам студентів, про що з захватом говорили в усьому світі. Ми усі уболіваємо про те, що життя Андрія так швидко закінчилося, ми захоплюємося тим, що вдалося йому зробити, і знаємо, що плоди його життя стануть джерелом знань для наступних поколінь вчених усього світу, які працюють в області комп'ютерних наук.


   1Спогади були опубліковані (англійською мовою) у журналі "Програмування". 1990. №1. Це був спеціальний випуск, присвячений пам'яті Андрія Петровича Єршова.
   2Дональд Е. Кнут - професор Стенфордського університету, автор багатьох робіт з математики і комп'ютерної проблематики. Популярність ученому принесла робота, яка нині стала класикою "Искусство программирования".
   3Академік Андрій Петрович Єршов (1931-1988) - один із засновників теоретичного і системного програмування, творець Сибірської школи інформатики.



За матеріалами книги "Из истории кибернетики", Новосибірськ, Академічне видавництво "Гео", 2006.
Російська академія наук, Сибірське відділення, Інститут обчислювальної математики і математичної геофізики
Редактор-укладач д-р техн. наук Я.І.Фет, Відповідальний редактор академік А.С.Алексєєв.
Переклад з російської Малашок Т.І.

Хронологія розвитку обчислювальної техніки в Україні