Научная статья на тему 'Как мы учились программировать'

Как мы учились программировать Текст научной статьи по специальности «Искусствоведение»

CC BY
314
48
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОГРАММИРОВАНИЕ / ОПЫТ РАБОТЫ / МАТМЕХ ЛГУ / PROGRAMMING EXPERIENCE / MATHMECH OF LENINGRAD UNIVERSITY

Аннотация научной статьи по искусствоведению, автор научной работы — Романовский Иосиф Владимирович

Автор вспоминает практику использования вычислительных машин на матмехе Ленинградского университета в 1950-1980-е гг.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The author recalls the experience of usage of computers on Mathematical Faculty of Leningrad University in 1950-1980-es years.

Текст научной работы на тему «Как мы учились программировать»

Романовский Иосиф Владимирович УДК 681.3.06

КАК МЫ УЧИЛИСЬ ПРОГРАММИРОВАТЬ

Аннотация

Автор вспоминает практику использования вычислительных машин на матмехе Ленинградского университета в 1950-1980-е гг.

Ключевые слова: программирование, опыт работы, матмех ЛГУ.

ВВЕДЕНИЕ

Про то, как работают вычислительные машины, я услышал впервые на докладе (скорее, на лекции) М.К. Гавурина на заседании городского математического семинара в Доме ученых, примерно в 1955 г. В это время в нашем городе не было еще ни одной электронной вычислительной машины. Сам Марк Константинович обладал уникальным опытом проведения серьезных математических расчетов на технике, совершенно для них не предназначавшейся, - на комплексе для работы с перфокартами. Этот комплекс был предназначен для обработки статистических и бухгалтерских данных и остался после проведения Всесоюзной переписи населения. Программа для этого комплекса не писалась, а набиралась на специальной коммутационной доске с помощью шнуров, соединяющих пары гнезд в этой доске.1

УРАЛ-1

Первым компьютером на факультете был забавный Урал-1, у которого вход-

ной файл набивался на черной (засвеченной и проявленной) кинопленке. Концы этого куска пленки склеивались, получалось кольцо, которое безостановочно «читалось» на специальном устройстве. Программировать нужно было, конечно же, только в кодах.

Я написал в кодах одну программу (что-то связанное с динамическими антагонистическими играми, которыми я занимался в своей аспирантской работе), но пока дожидался, что мне дадут время на пропуск, нашел сам ошибку. Исправление ошибок было сложным: требовалось заклеивание некоторых пробивок, пробивок в новых местах, иногда вклейки новых фрагментов. Я сдался.

М-20 И ЕЕ ВАРИАНТЫ

Затем появилась большая и солидная машина М-20. Эти машины производились для нужд оборонного комплекса, их было выпущено всего 20 штук, вузам их давали не очень много. М-20 имела в сравнении с «Уралом» огромную память, 4096

I I I I 111111 1111 1111 1111 1111 1111 1111 1111 1111 1111 I ■ III 111111 1111 1111 1111 М11 1111 ММ 1111 ММ 1111 I

12 + 4 8 10 12 1+ И 18 20 22 24 И 28 30 32 3+ 34 38 4-0 42 И 44 48 ¿0 52 .4 ЛС Л8 40 <2 4 4 4( (8 70 72 74 74 78 80

о о о о о о о о о о о о о о о о о I о I о I о I о (II111 о о 11 и о || 11 о ■( И о м II о 11 к о IIII о I м 1 о;1 м I 0 II11 о о I

11111111111111191111 |1||1М|11||1|1|1М1||1|1 ММ 111111 ММ 1||111||111||1111|

Рис. 1

1 В некоторых фильмах про начало XX века вы можете увидеть такую доску на телефонной станции, где телефонистки соединяют таким образом абонентов.

© И.В. Романовский, 2010

слов по 45 байтов, АЦПУ - алфавитно-цифровое печатающее устройство,1 внешнюю память: большие барабаны и магнитные ленты. Машина занимала огромный зал, в котором было очень жарко -она была ламповой.2 При таком количестве радиоламп было естественно, что каждый день какие-то из них перегорали.

На М-20 мы сначала тоже писали программы в машинных командах. Машина была трехадресная, это значит, что каждая команда состояла из кода команды и трех адресов (хотя в некоторых командах не все адреса использовались). Сейчас мы скажем, что эта ЭВМ была типична для того времени, когда думали, что ЭВМ нужны в основном для математических вычислений.

Программы набивались на перфокартах - на каждой перфокарте записывалось по 12 команд. С большим трудом удалось найти (в книге С.С.Лаврова [1])3 точное описание расположения пробивок, их было 47 - вспомогательные в 18 и 80

столбцах, 9-битовый код команды, состоящий из трех отдельных битов-признаков и 6 битов номера команды, три 12-битовых адреса, каждый из которых разбит на четверки. Карта возможных пробивок выглядела примерно так, как показано на рис. 1 для первых четырех строчек.

Читать содержимое этих карт было неудобно. Изготовлялись «читалки» - трафареты, сделанные из карт, полностью пробитых и разделенных на зоны. Это было достаточно удобно для команд в восьмеричной записи (еще удобнее была бы 16-ричная запись, но она не использовалась), для чисел было труднее.

Еще труднее было разбираться с текстовой набивкой, при которой в каждой строке помещалось до трех 7-битовых кодов. Вот полюбуйтесь, как выглядела в появившемся вскоре автокоде для М-222, существенного развития машины М-20, строка с простым текстом «* ПРИМЕР ЗАПИСИ;».4 Я сделал в строке номер 2 (рис. 2) разметку серым цветом использу-

12 + ( 8 10 II 1+ К 18 20 22 2+ 2( 28 30 32 3+ ЗС 38 +0 +2 ++ +8 30 32 Н 38 ¡0 '2 " '8 70 72 7+ 7' 78 80

ооооооооооооооооо|оооооооо|о|оооооо|оо|оо|оо|о|оооо|о|о|оооооооооооооооооооооооо 11111111111111111111111111111111111111111111111111111111111111111111111111111111

22222222222222222|2|2|2|2||||||22||||2||||2||||2||||2||||2||||2||||2||||2||||22|

Рис. 2

1 АЦПУ появились не сразу, сначала на машинах была только так называемая «быстрая печать», выдававшая узкую ленту, на которой были напечатаны в один столбик числа в формате с плавающей запятой. В АЦПУ печатаемая строка состояла из 128 позиций, в каждой из которых печатался один из 78 символов. Для печати использовался барабан со 128 круговыми дорожками, на каждой из которых были выпуклые изображения всех 78 символов. За один оборот барабана печаталась одна строка - при прохождении строки барабана, содержащей очередной символ молоточки прижимали красящую ленту к бумаге в тех местах, где должен стоять данный символ. Система очень громоздкая. В дальнейшем, кажется, в Чехословакии было изобретено замечательное печатающее устройство с «игольчатой головкой». Эта головка состояла из набора иголочек, которые выдвигались и образовывали нужный символ. Его прозвали «иглотыком», что хорошо объясняло принцип работы. Первоначально печать была немногим лучше чем у большого АЦПУ, но лет через 10 они были доведены до прекрасных и очень надежных устройств.

2 Примерно в это время я слышал рассказ, как американцы боролись с размером радиоламп, когда выяснилась гигантская потребность военной техники в радиооборудовании. Они ввели налог ... на запаянныш вакуум. Изготовитель изделия с вакуумом в емкости должен был уплатить казне какие-то деньги, пропорциональные размеру этой емкости. Немедленно появились решения, в которых размер ламп был уменьшен, а затем и безламповые схемы.

3 Это согласуется и с моими собственными воспоминаниями, но ... мне принесли реальные перфокарты в которых пробивки в 18 и 80 колонках дублируются соответственно в 17-й и 79-й.

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

емых столбцов. Чтобы вам было удобнее разбираться.1

В таком же стиле пришлось набивать и программы на Алголе-60. Большой радостью было, когда у нас появился транслятор с полноценного алгоритмического языка. Он назывался ТА1_М или Сигнал. Учебной литературы и по машине и по транслятору почти не было. На основе фирменных материалов по транслятору была подготовлена (хотя и не сразу) небольшая методичка (рис. 3).

Но работать было трудно не только из-за отсутствия литературы. Каждый пропуск программы требовал большого времени на подготовку колоды - комплекта перфокарт. Пользователь (тогда и появилось это слово, основным пользователем был студент) писал программу и сдавал ее в отдел подготовки информации. Ему выдавали колоду перфокарт и очень некрасиво напечатанный текст, по которому только и можно было проверить содержимое. Проверив, автор либо заказывал исправления, либо сдавал программу на машину для пропуска «в пакетном режиме» (впрочем, некоторые пользователи-сотрудники получали индивидуальное машинное время). Через несколько дней,

Рис. 3

Рис.

иногда через один, в лучшем случае в тот же день вечером, он получал ответ. Иногда ответ был «несовпадение контрольных сумм при вводе». При выяснении зачастую оказывалось «У вас перфокарта кривая». Это значило, что устройство подготовки перфокарт в факультетском ВЦ плохо настроено, а начальник ЭВМ старается свалить на пользователей вопросы настройки периферийных устройств.

Использовался в ВЦ и созданный в Новосибирске под руководством А.П. Ершова так называемый а-транслятор. Он работал не с «чистым» Алголом-60, а с некоторым его расширением - а-языком. Для задач, связанных с большим счетом, а-транслятор казался нам более эффективным, но для огромного потока студенческих программ СИГНАЛ был предпочтителен.

Помню, как наши системщики внесли в работу транслятора интересное изменение. Транслятор при обработке программы выполнял тогда очень много просмотров. Сам транслятор находился на магнитной ленте, и лента при обработке каждой программы читалась, зона за зоной. Легко заметили, что в большинстве студенческих заданий оказывается достаточно нескольких первых зон - они находят ошибки, и задача снимается. Перевод этих зон транслятора на магнитный барабан резко ускорил работу.

В это время я стал пытаться готовить документацию, позволяющую пользователям обмениваться опытом работы. Начали мы с выпуска маленьких бюллетеней, которые назвали «Алгол-процедуры». Эти бюллетени пользовались спросом, к нам часто приходили и просили показать 4 какую-нибудь программу на

1 Если хотите разбираться, то коды таковы: КОД(*)=031, КОД(пробел)=017, КОД(А)=040, КОД(Е)=045, КОД(3)=047, КОД(И)=050, КОД(М)=054, КОД(П)=057, КОД(Р)=060, КОД(С)=061, КОД(перевод строки)=150.

Алголе, хотели увидеть, как это делается. В выпуске 2, показанном на рис. 4, напечатана процедура для построения кода Хаффмена, написанная студентами А.Н. Тереховым и П. Сёке, я до сих пор не знаю более удачного решения.

Использование славянской вязи на обложке оказалось полезным -наши бюллетени было невозможно с чем-нибудь спутать. Нужно отметить предусмотрительность директора ВЦ Г.П. Самосюка: когда я просил у него разрешение на издание (и, значит, на финансовые затраты), он велел мне представить структуру системы наших изданий. Именно эта структура подтолкнула нас к подготовке и изданию многих полезных материалов. Упомянутая брошюра по транслятору СИГНАЛ была одним из них.

ОДРА-1204

В 1968 году в Вычислительном центре появилась казавшаяся странной польская машина - «0ёга-1204» (клон одной из моделей английской 1СЬ), совершенная малютка даже в сравнении с Уралом-1. Из периферийных устройств она имела ввод с перфоленты и вывод на перфоленту (полученные на перфоленте результаты можно было потом распечатать на телетайпе, которым служила немецкая пишущая машинка «Оптима»). Внешней памяти не было. Но оперативная память была довольно большой. Одра быстро стала экспериментальным полигоном для тех, кому программирование нравилось.

На Одре был великолепный транслятор с языка Алгол-60, очень надежный и быстрый. Мы довольно быстро издали краткое описание машины (рис. 5) и три выпуска с описанием транслятора (рис. 6).

ЛЕН1ШГШШ «НЕМ АЕНИИ1 II Тиьоип КШ««П1 Знипеы

Г1СЧ1*КГ1ЕНШ1 щцштт

НПЕНЦ ЛА^ЬАНМА ишислитшньш ЦЕтТР

ПЕТШЦЕМ ПИЕНОИМ ПО гтмтиотч МСКПШП ЯН СЕН»}' №ОШШпгтмнил»№мшЯ ТНШ.ЯТО»

ПРИ А

ШЯЕ

члсть Т

1ОДЛЕДОТИ ЧШЬ£«ЦТЕТ*

- т-

Рис. 6

Технология работы программиста была такой: вы писали текст на обычной бумаге, вам его набивали на уже упомянутой пишущей машинке «Оптима» и выдавали этот текст на бумаге и в виде 8-каналь-ной перфоленты (рис. 7). Можно было делать в тексте исправления и просить внести исправления, возвращая и текст и ленту. Оператор копировал неизменяемую часть текста, а исправления добивал вручную. Пропустив выкидываемую часть. Конечно, ошибки и повторные исправления были неизбежны. Хотя эта технология была гораздо удобнее, чем на М-20 и ее вариантах и работа не была связана с большим потоком студенческих задач, но сразу же захотелось улучшений и в ней.

Улучшения появились очень быстро. Григорий Самуилович Цейтин с двумя

Рис. 7

Рис. 5

помощниками - С.Н. Барановым и А.Н. Тереховым (тогда еще студентами) написали на этом же Алголе с привлечением некоторых средств операционной системы программу dico (сокращение от dialogue corrector) (рис. 8). Программа предназначалась для исправления текстовых файлов. Исправления делались в диалоге: пользователь вводил исходный текст и, сидя за монитором компьютера - опять «Оптима» - набирал команды. Программа выполняла очередную команду, сообщала, если нужно, результат и приглашала ввести следующую команду. Заключительной командой пользователь приказывал вывести новую ленту.

При этом авторы выбрали прекрасный стиль разработки системы. Была внедрена очень простая система, а потом последовал поток усовершенствований. Каждое усовершенствование сначала объявлялось как идея, и можно было вносить исправления и усовершенствования, которые сразу же обсуждались - обычно где-нибудь в коридоре или на лестнице.

Замечательной находкой, которой очень недостает в современных текстовых редакторах, была возможность введения и выполнения файла исправлений, напи-

санного в том же формате, что и исправления с монитора.1 Кроме того, появилась возможность передавать текст, исправленный dico, на трансляцию. Благодаря этому долгое время можно было не перфорировать новую ленту программы, достаточно было иметь ленту с исправлениями.

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

Вскоре Г.С. Цейтин и С.Н. Баранов написали еще одну замечательную программу - текстовый редактор George Brown (рис. 9). Сейчас не требуется объяснять, что делает такая программа - форматирует текст для печати на пишущей машинке (скорее, нужно объяснять, что такое пишущая машинка). Система допускала использование сокращений - в технической и научной литературе это очень удобно. Кроме того, это была возможность удобно готовить тексты на латинице в ситуации, когда и обычную-то латинскую машинку было ужасно трудно достать. У меня самого было два важных использования этой программы.

Сначала была написана и напечатана с ее помощью статья для американского журнала. А второе -нужно было помочь Л.В. Канторовичу подготовить текст лекции, которую он должен был прочесть после вручения ему Нобелевской премии по экономике за 1975 год. Потом эта помощь была отмечена оттиском лекции с дарственной авторской надписью за «большой вклад в создание этого сочинения (вме-

Рис. 8

Рис. 9

1 Я и сейчас люблю в некоторых случаях крупного изменения текстов писать специальные исправляющие программы. Для этого хорошо подходит язык AWK.

сте с К. Прутковым, ОДРОЙ и в. Бгс^п'ом)».

На Одре Г.С. Цейтин и его ученики отлаживали первые варианты блоков транслятора для языка А^с1-68.

Активно использовал Одру приехавший в Ленинград в 1971 году и принявший на себя заведование кафедрой математического обеспечения С.С. Лавров, главный разработчик транслятора ТА-1М. На этой машине он работал над языком Лисп и, как мне стало известно только сейчас, написал транслятор с Паскаля. Он вспоминал, что Одра «была доступна почти как персональная для десятка сменяющих друг друга пользователей». Святослав Сергеевич опубликовал в нашей серии брошюр свой перевод статьи Н. Вирта о языке Паскаль -этот перевод у нас вышел в 1974 году -когда Вирт и Йенсен подготовили стандарт Паскаля (рис. 10).

МАШИНЫ ЕДИНОЙ СЕРИИ

Во «времена Одры» в СССР стали появляться и другие ЭВМ. Здесь можно назвать машины СМ-3 и СМ-4 - клоны американских РЭР-9 и РЭР-11 и целую серию интересных машин Минск, ориентированных на экономические расчеты. На этих машинах я не работал, ничего о них сказать не могу.

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

образца были приняты система 1БМ-360 и ее развитие 1БМ-370.

На матмехе появились машины ЕС достаточно мощных моделей, и все программисты переключились на них.

Первые реакции: совсем другая машина, бессмысленно расходует огромное количество высококачественной бумаги. С этим постепенно справились, управление печатями в системе было достаточно гибким. Нужно было заново учиться управлять машиной, осваивать 1СЬ - специальный язык управления заданиями. С этим наши специалисты, включая студентов, достаточно быстро справились, написали все требуемые управляющие файлы и ... неожиданно для себя приобрели в городе широкую известность. Как полагается культурным специалистам, в каждый такой файл они вставляли комментарий - кто и когда этот файл писал и исправлял. А матмех широко разрешал копировать эти системные файлы многочисленным организациям. Карты комментариев часто появлялись в распечатках, и ... дальше понятно.1

Обеспечивать пользователей большим количеством документации не понадобилось, в отличие от «прежней жизни» достаточно оперативно стали большими тиражами выходить солидные книги, так что достаточно было издать местную «Инструкцию по подготовке задания в ОС ЕС ЭВМ». В этой инструкции была примечательная особенность. Американские компьютеры использовали перфокарты, которые соответствовали строкам текста, в 80-колонной перфокарте можно было набить строку до 80 символов, и их устройства

Ленинградца* ирдЕчч лсмил

¿^Ш Н ОРДЕНА 1>Д;Р0П К РАС него ¡!йЛГ*НИ

Г(И»Д*НТКННт униекн№

' ИМЕНИ А.Д.ЖДЛНОВА,

вынисдитеаьннн цент*

МЕТЩКСШЕ МАТЕШАЛЫ

по пюгмммнот щегщщс ЗВМ

сема1?-Описание алгоритмических языков- вытек 1 I

Жаскаль ИЭЛАТКПлСТМ! ЛГШЬГОДСКОП) 7Н.1ОТГСИТ£ТЛ г

ЛЕНИНГРАД

Рис. 10

1 Один из этих программистов достиг в дальнейшем высокого поста, это И.Р. Агамирзян, генеральный директор авторитетной «Российской венчурной компании». Он окончил матмех в 1979 г. и многих «ужасов» раннего программирования, к счастью, не видел.

подготовки перфокарт надпечатывали над каждой колонкой набранный текст. Например, так (см. рис. 11).

Здесь набит текст «0123456789. ABCDEFGHIJKLMNOPQRSTUVWXYZ,» и далее (эта кодировка отличается от тогдашней) «АБВГДЕЖЗИЙКЛМНОПРСТ УФХЦЧШЩЪЫЬЭЮЯ'&*-=+()»?», знаков помещено столько, сколько уместилось. Поскольку кириллицы в американском прообразе предусмотрено не было, устройство набивки было в СССР выполнено заново, и надпечатки оно не делало. Да и кириллица была сначала не вся, а только буквы, которых латинскими буквами не заменить.

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

Тем, кто работал на Одре или других малых машинах, сразу же захотелось иметь больше уюта, прежде всего в подготовке и пропуске заданий. Такая возможность появилась, когда у нас появились первые терминалы удаленного доступа - телеви-зоры,1 на экране которых изображались крупным шрифтом 25 строк по 80 символов в каждой строке. Кроме того, появи-

лись магнитные диски, сначала по одному на несколько лабораторий, а потом все больше и больше. На дисках организовывались древовидные структуры, про которые нынешним программистам ничего объяснять не нужно.

Г.Ф. Дейкало и Б.А. Новиков взялись за разработку системы, использующей эти терминалы. Они присвоили разработанной ими программной системе имя JEC. Объяснения названия не было, но оно было удобно и возражений не вызывало. Используя JEC, программист мог набивать или исправлять файлы и записывать их в свою библиотеку (они назывались разделами библиотеки). Он мог отправлять файл из библиотеки как задание на трансляцию и выводить результаты частично на печать АЦПУ, а частично в библиотеку же.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Работа на машинах резко изменилась. Отдел подготовки перфокарт стал терять свою работу, а программисты - колоссально экономить время. Но уже с самых первых дней работы JECа появился интересный социальный эффект. В комнате, где стоял первый терминал, а потом первые два, «тусовались» ждущие своей очереди специалисты. Естественно, что к ним обращались с вопросами, и появилась замечательная среда профессионального обще-

« 1 ] 3 4 5 ( : ! 1 . АВ (ПЕГ 6Е1 I К1 МНОР 515 А11Г ДЕЖЗ ИЙ1ЛМН0ПР (ТУ! Н ЦЧ ШЩЪ ЫЬ Э ЮЯ 1 & *

иг

12 + ( 8 10 12 1+ К 10 20 22 2+ 2( 28 30 32 3+ 3( 38 +0 +2

I О О О О О О О О О О О О О О О О О О О О О О О О О О О О I I I I I I I I I О О I I I I I

+8 т 11 .н .а

38

(2 " (8 70 72 7+ 71 78 80

| | | | 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 |

1|111111111|11111111|111111111111111111|1111111|1|1111111|111111|111111111111111

22|222222222|22222222|2222222|2222222222|222222222|2222222|222222|22222222222222 ззз|зззззз|зз|зззззззз|ззззззз|зззззз|ззз|ззззззззз|ззззззз|зззззз|ззззззззззззз

4444|444444444|44444444|4444444|4444444444|444444444|4444444|444444|4444|4444444

55555|555555555|55555555|5555555|5555555555|555555555|5555555|555555|5|55555||55 бббббб|ббббббббб|бббббббб|ббббббб|бббббббббб|ббббббббб|ббббббб|бббббб|бббб||бббб 7777777§777777777§77777777§7777777Й7777777777§777777777§7777777§77777777777777§§

1 2 + ( 8 10 12 1+ К 18 20 22 2+ 2( 28 30 32 3+ 3( 38 +0 +2 ++

999999999|999999999|99999999|9999999|9|9|||||

+8 зо п :+ а |99|||||||

38 (0 (2 С+ " (8 70 72 74 И 78 80

99999999999999999999999

Рис. 11

1 Помню, как мне досталось от Л.В.Канторовича за то, что я неуважительно назвал терминал телевизором. По-видимому, в этой «выволочке» было стремление отгородить научное оборудование от бытового опошления. Но вот прошло сколько-то времени, и экраны бытовых компьютеров и мобильных телефонов, вероятно, стали даже более бытовыми чем «настоящие» телевизоры.

МИНИСТЕРСТВО ВЫСШЕГО И СРЕДНЕГО-СПЕЦИАЛЬНОГО ОБРЛЭОПАННР РГ*С|' . книги [ищ««* i.ili дни ,'lfKHHl К ирдсна Трудопто Красною Энангнн Мюииереяо хншвго ■ ервнага mitiuutn оврмогмая КФСР ЛваангршпК вривй JesiKb i йрдоаа Трудового Емемгв Зин*?« гмуюрзтвенти jiuepcitt« п. М.!№■»»*

Циа»|1ПМ*£ц.Н| ввшхв

Н. О, СЛФОНОВ АВТОКОД ЭЛЬБРУС Иятоддчвпив инбряму в® тгминиш1 «facuewiia :?вя дн cTj^Btqj cniUibiiiBDctt &H? 1ЙТЗГОРНАТ0Р IE m ш № 9Я

JIvHUHriiau 1№3 ГИ1

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

Очень серьезным испытанием возможностей наших программистов стал большой подряд на изготовление математического программного обеспечения для вновь разрабатывавшейся вычислительной машины Эльбрус, выполнявшийся всем Институтом. Вычислительный центр планировал получить такую машину, об этом быта достигнута договоренность, и здание Вычислительного центра было спроектировано с учетом такой поставки. Подряд был частью этой договоренности. Но пока в Ленинграде таких машин не было, и нужно было находить какой-то выход из положения: писать программы следовало на специальном алгоритмическом языке, который назывался «Автокод Эльбруса».

Знавший этот язык В.О. Сафонов срочно прочел нам курс лекций по Автокоду и написал для нас учебное пособие (90 стр.), которое было быстро издано. Но еще быстрее был подготовлен (под руководством Н.Ф. Фоминых) интерпретатор этого Автокода, прекрасно работавший на машинах ЕС. Благодаря этому интерпретатору почти вся огромная работа была выполнена дома, в Москву приходилось ездить только для опробования отлаженных дома программ.

Надо еще сказать, что к появлению ШСа некоторые сначала отнеслись скептически. Главный аргумент был такой: у американцев таких «полноэкранных» систем нет, значит, что-то в них неправиль-

Рис. 12

но. Я только потом, побывав в США, понял, почему там полноэкранные системы появились с опозданием: были очень хорошо развиты телетайпные системы, такие как наш диалоговый корректор dico. Такие системы до сих пор популярны у тех, кто работает в UNIX и подобных ему системах. У нас возражения такого рода затихли..., когда у ШСа появились московские конкуренты. Из конкурентных систем наибольшее распространение получил PRIMUS - создание МИФИ.

А JEC передавался другим организациям, по договору (около 40 передач) и просто так. Было больше дюжины таких передач, которые вызывали встречные предложения по совершенствованию системы.

JEC был воспет в матмеховском фольклоре. Приведу описание реальной истории (к которой, увы, имел отношение), записанной в виде пары лимериков. Девочка Катя гордо и смело В библиотеке чинила разделы1 И, экономя Место на томе,

Новый раздел заводить не хотела. Некий профессор из города Л Раз заглянул в свой любимый раздел, И на весь зал Громко кричал

Страшныш профессор из города Л.

Панно «JEC завис» нарисовал мой аспирант А. А. Лебедев (рис. 13). В ней много интересных подробностей, не хочется их пересказывать. Когда я спросил автора, какой из сюжетов больше всего нравится ему самому, он сказал, что это тюремная камера на переднем плане - без запоров и вообще без двери с JEC-мони-тором на столе.

МИР ПЕРСОНАЛОК

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

Рис. 13

Литература

1. Лавров С.С. Введение в программирование. М.: Наука, 1973. 352 с

Abstract

The author recalls the experience of usage of computers on Mathematical Faculty of Leningrad University in 1950-1980-es years.

Keywords: programming experience, mathmech of Leningrad University.

Романовский Иосиф Владимирович, доктор физико-математических наук, профессор, кафедра исследования операций математико-механического факультета СПбГУ, ЗоъерКтотапохъку @gmail.com

© Наши авторы, 2010. Our authors, 2010.

i Надоели баннеры? Вы всегда можете отключить рекламу.