Дисциплине введение в специальность. Основные понятия и виды языков программирования, страница 3

В 1956 г. группой программистов под руководством Джона Бэкуса был создан первый компилятор для нового, более «человечного» языка программирования. Он получил название FORTRAN (от англ. formula translation — «трансляция», «перевод формул»).

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

            2.5.Язык ALGOL

За создание следующего языка программирования решили взяться ученые тех областей науки, которые в англоязычной литературе обычно объединяют под названием «Computer Science», т.е. «наука о компьютерах».

В 1960 г. на основании отчетов научных конференций был создан обобщающий документ, описывающий новый язык — ALGOL-60. Его наименование произошло от английского algorithmic language — «алгоритмический язык».

Для переменных стали четко определяться участки программы, в пределах которых эти переменные могут использоваться. Такие участки программы называются областями видимости, а про переменную говорят, что она видна или не видна в данной области программы. Переменная, объявленная внутри функции, процедуры или специального логического блока операторов, будет видна только внутри данной конструкции.

Стало обязательным указание типа переменных перед их использованием —  объявление.

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

В языке ALGOL были четко описаны структурные управляющие операторы: операторы выбора и операторы повторения (цикла). Операторы выбора позволяют выполнять те или иные  участки кода в зависимости от вычисляемого условия. Операторы цикла предназначены для повторения определённого участка кода заданное количество раз или до тех пор, пока не выполнится определённое условие.

Управляющие операторы присутствовали и в языках Ассемблер и FORTRAN,но они не были основным элементом при написании программ, не обладали удобством использования.

Через восемь лет, в 1968 г., вышел новый, переработанный и дополненный вариант языка Algol-60, который получил вполне предсказуемое имя Algol-68. С этим стандартом связана и опубликованная в 1969 г. статья Эдсгера В. Дейкстры о структурном программировании.

К сожалению, новая версия Algol-68 так и не смогла не только завоевать популярность у прикладных программистов, но даже пробиться в ряды коммерческих продуктов. Язык Algol остался научным исследованием, «академическим» языком, который оказал огромное влияние на развитие языков программирования  в целом. Он стал фактически стандартом для описания компьютерных алгоритмов в научных исследованиях и породил целое семейство алголоподобных  языков (к которым, собственно, и относятся почти все современные процедурные языки, такие, как Pascal, Modula, C).

            2.6.Язык PASCAL

В 1970 г. известный швейцарский ученый профессор Никлаус Вирт создал собственный язык программирования, в котором постарался избавиться от всех недостатков языка Algol. Новый язык получил название Pascal.

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

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

Создание языка Pascal явилось значительным этапом в развитии языков программирования и определило путь их развития в 70-х гг. ХХ в.; большинство языков следующего десятилетия можно считать прямыми потомками языков Algol и Pascal.

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

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