Чтение онлайн

на главную - закладки

Жанры

Очерки истории отечественной программной инженерии в 1940-е – 80-е годы
Шрифт:

Ряд объективных обстоятельств способствовал тому, что до середины 60-х годов программирование в СССР развивалось до некоторой степени автономно от зарубежного [1, 3, 4]. К этим обстоятельствам относились:

• более позднее начало массового производства электронной вычислительной техники (примерный сдвиг – 5 лет);

• меньшее количество доступных вычислительных ресурсов, приведшее к не столь широкому размаху работ, как в США или в Англии;

• практическое отсутствие импорта вычислительных машин и технологий;

• языковый барьер и сравнительно менее интенсивные личные контакты специалистов (в частности, вследствие секретности);

• некоторые общие отличия в организации и стиле научных исследований и производства.

Заметное влияние на общее развитие программирования

в мире оказали работы Ю.И. Янова, приведшие к созданию теории схем программ, и некоторые работы по оптимизации трансляции. Существенный вклад в мировую тенденцию внесло широкое распространение Алгола-60 в СССР. Большая часть результатов представляла независимые, индивидуальные, практические разработки, без которых невозможно было полноценное развитие отечественного программирования.

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

В середине 50-х годов появились небольшие по численности группы математиков, привлеченных к разработкам проектов вычислительных машин, проводившихся в небольшом числе проектных организаций и институтов в Москве, Ленинграде, Киеве, Минске, Пензе. Каждая вновь разрабатываемая машина, прежде всего, требовала создания для нее операционной системы и программ вычисления элементарных функций. При этом необходимо было добиваться предельной эффективности таких вычисления на данной конкретной архитектуре и ресурсах ЭВМ. Это требовало от математиков высокого уровня понимания деталей логики работы процессора. Возможно, что именно это явилось отличительной чертой отечественных школ программирования, чертой теснейшей их связи с инженерными разработками, которая определила в дальнейшем, как достоинства, так и недостатки в работе этих школ.

Теоретические исследования методов программирования для ЭВМ в 1950-е – 60-е годы, активно проводились в Московском, Ленинградском и Киевском университетах, в Институте автоматики и телемеханики АН СССР, в Вычислительном центре АН СССР [1, 4]. В 1950 году в ИТМ и ВТ начал работать первый постоянный семинар по программированию, которым руководил Л.А. Люстерник, в МГУ в 1952-м году была основана кафедра вычислительной математики (ее возглавил С.Л. Соболев). В 1953-м году в Математическом институте АН СССР был создан отдел программирования во главе с А.А. Ляпуновым, а в 1955-м году был основан Вычислительный центр МГУ, специализировавшийся на разработке и применении вычислительных методов для решения научных и прикладных задач.

В 1952-м – 53-м годах А.А. Ляпуновым был предложен операторный метод для описания программ. Практически впервые был создан способ представления программ на обозримом уровне. Вместо неэффективного для человека написания программ в машинных кодах было предложено формализованное представление программ на языке высокого уровня. Особенно важным было то, что операторный метод позволил подготовить теорию синтаксических структур программ. В 1953-м году А.А. Ляпунов сформулировал постановку задачи автоматизации программирования. Эта оригинальная постановка была успешно использована в первых отечественных трансляторах, называвшихся тогда программирующими программами (ПП). Летом 1954-го года появилась

программирующая программа ПП-1, разработанная в отделе прикладной математики Института математики АН СССР, а в 1955-м году – ее улучшенный вариант ПП-2. К середине 50 – х годов у ведущих специалистов в области вычислительной техники сформировалось представление о путях развития отечественной информатики и программирования.

В середине 1957-го года, Виктор Михайлович Глушков, определил направления стратегических исследований в области информатики [3]. По его мнению, основой прогресса развития вычислительных машин должна была стать теория их работы, разработка методов автоматизации проектирования ЭВМ и автоматизации программирования. Он подчеркивал важную роль исследований в области теории алгоритмов и теории конечных детерминированных и стохастических автоматов, принципиальное значение разработки методов символьных преобразований на ЭВМ. Отмечалась центральная роль, которую играет задача оптимизации размера при трансляции программ (особенно для управляющих машин), а также указывалось на обратное влияние развития вычислительных машин на дальнейшие работы в области вычислительной математики. В конце 1959-го года в Москве, в МГУ состоялось «Всесоюзное совещание по вычислительной математике и вычислительной технике». Это было большое научное собрание с почти 2000 участников и 217 докладами, прочитанными на четырех секциях.

Постепенно складывалась концепция системного математического (программного) обеспечения ЭВМ – интегрированной и удобной в работе системы различных средств автоматизации программирования (библиотеки, трансляторы, средства отладки), сопряженных с определенной дисциплиной реализации задач на машине [5]. Проблеме математического обеспечения ЭВМ было много препятствий научно-технического и организационного характера, одно из которых – слабая разработанность концепции программного продукта и его производства. Для М-20 в то время таким средством для вычислений была библиотека стандартных подпрограмм. Идея превращения библиотеки в переносимый и общий программный продукт стала для М.Р. Шура-Буры на некоторое время главной задачей, на решении которой со временем сформировались более общие взгляды на системное программное обеспечение. Необходимо было найти некоторый объект конструирования и научной работы, который одновременно решал бы задачу унификации математического обеспечения, мог бы быть эффективным средством автоматизации программирования и выдвигал бы новую научную проблематику. Таким корневым объектом в стране стал Алгол-60.

В начале 60-х годов был опубликован алгоритмический язык Алгол-60, рекомендованный в качестве международного стандарта для публикаций вычислительных алгоритмов. В нашей стране Алгол-60 был принят в качестве государственного стандарта. Использование других языков для программирования вычислительных задач не рекомендовалось и это касалось даже широко применявшегося за рубежом более простого языка Фортран. После этого в стране началась активная разработка трансляторов с Алгола- 60 для нескольких типов машин. Попытки создать транслятор с полного языка Алгол-60 за рубежом не удались. В ИПМ такой транслятор был создан для машины «Стрела», а затем для машины М-20, что явилось достижением мирового уровня.

В то же время стала совершенно очевидной общенаучная ценность этого документа, которая требовала его широкого распространения. Ситуация весной 1960-го года оказалась весьма благоприятной для принятия Алгола-60 в качестве единого языка программирования научных и инженерных применений ЭВМ. В июне в Вычислительном центре АН СССР координационное совещание по вопросам реализации Алгола-60. На фоне общей и во многом разнонаправленной активности выделились три проекта реализации языка для М-20, получившие, соответственно, названия TA-1, ТА-2 и Альфа. Начавшись как три независимые и подчас конкурирующие разработки, они в процессе развития приобрели взаимодополняющие свойства, решив удовлетворительно проблему снабжения М-20 трансляторами с Алгола-60.

Поделиться:
Популярные книги

Моя простая курортная жизнь

Блум М.
1. Моя простая курортная жизнь
Проза:
современная проза
5.00
рейтинг книги
Моя простая курортная жизнь

Потомок бога

Решетов Евгений Валерьевич
1. Локки
Фантастика:
попаданцы
альтернативная история
аниме
сказочная фантастика
5.00
рейтинг книги
Потомок бога

Измена. Осколки чувств

Верди Алиса
2. Измены
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Осколки чувств

Невеста напрокат

Завгородняя Анна Александровна
Любовные романы:
любовно-фантастические романы
6.20
рейтинг книги
Невеста напрокат

В погоне за женой, или Как укротить попаданку

Орлова Алёна
Фантастика:
фэнтези
6.62
рейтинг книги
В погоне за женой, или Как укротить попаданку

Мастер 6

Чащин Валерий
6. Мастер
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Мастер 6

Звездная Кровь. Изгой V

Елисеев Алексей Станиславович
5. Звездная Кровь. Изгой
Фантастика:
боевая фантастика
попаданцы
технофэнтези
рпг
фантастика: прочее
5.00
рейтинг книги
Звездная Кровь. Изгой V

Возвышение Меркурия. Книга 4

Кронос Александр
4. Меркурий
Фантастика:
героическая фантастика
боевая фантастика
попаданцы
5.00
рейтинг книги
Возвышение Меркурия. Книга 4

Наследник жаждет титул

Тарс Элиан
4. Десять Принцев Российской Империи
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Наследник жаждет титул

Эволюционер из трущоб. Том 9

Панарин Антон
9. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Эволюционер из трущоб. Том 9

Месть Пламенных

Дмитриева Ольга
6. Пламенная
Фантастика:
фэнтези
6.00
рейтинг книги
Месть Пламенных

Измена. Право на обман

Арская Арина
2. Измены
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Право на обман

Наша навсегда

Зайцева Мария
2. Наша
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Наша навсегда

Штуцер и тесак

Дроздов Анатолий Федорович
1. Штуцер и тесак
Фантастика:
боевая фантастика
альтернативная история
8.78
рейтинг книги
Штуцер и тесак