Алгоритмические (процедурные) языки программирования

Обзор языков программирования. Понятие системы программирования. Основные системы программирования.

Старейшим языком высокого уровня, не утратившим своей актуальности и сегодня, является ФОРТРАН (FORTRAN), хотя от исходной версии в нем мало что сохранилось. Название ФОРТРАН составлено из словосочетания «FORmula TRANslation» (трансляция формул), поэтому его принято писать прописными буквами (это касается многих языков программирования). ФОРТРАН разработан в IBM в середине 1950-х для компьютеров серии 704 и долгое время интенсивно использовался в научном и инженерном программировании. Он особенно удобен для математических расчетов благодаря обширнейшей поддержке операций с плавающей точкой, включая возможность работы с комплексными числами. Для него было создано огромное количество библиотек, начиная от статистических комплексов и, кончая пакетами управления спутниками. Все это позволяет активно использовать его и сейчас.

АЛГОЛ (ALGOL). Его имя – тоже сокращение, составленное из «ALGOrithmic Language» (алгоритмический язык). Он во многих отношениях – прямой предок многих распространенных языков, созданных позднее. Даже в наши дни иногда приходится слышать о «языках программирования типа АЛГОЛа». Первую версию – АЛГОЛ 58 – разработал в 1957-58 гг. международный комитет программистов. Два года спустя был выпущен усовершенствованный вариант – АЛГОЛ 60, а затем и АЛГОЛ 68.

Первыми программистами были в основном ученые и инженеры, которые умели формулировать свои задачи на языке математики, положенном в основу ФОРТРАНа и АЛГОЛа. Однако на протяжении всей истории языков программирования неоднократно предпринимались попытки разработать язык, который могли бы использовать и люди, не столь близко знакомые с математикой.

Одним из первых языков, специально предназначенных для бизнеса, был КОБОЛ (COBOL), созданный в конце 1950-х комитетом из представителей промышленности и Министерства обороны США. КОБОЛ широко применяется и сегодня. Его название расшифровывается как «COmmon Business Oriented Language» (язык, ориентированный на общие коммерческие задачи). Одно из основных требований, предъявлявшихся к КОБОЛу, заключалось в том, чтобы менеджеры, сами не занимавшиеся программированием, могли хотя бы читать программы и убеждаться, что они делают именно то, что должны делать. В КОБОЛе имеются обширные возможности по чтению записей (records) и созданию отчетов (reports).

В середине 1960-х в IBM разработали для компьютеров System/360 язык PL/I (Programming Language I, язык программирования №1). Предполагалось, что в PL/I будут объединены модульная структура программ на АЛГОЛе, обширный математический аппарат ФОРТРАНа и средства КОБОЛа для работы с записями. Но уровня популярности ФОРТРАНа или КОБОЛа этот язык так и не достиг.

Язык БЕЙСИК (BASIC, Beginner™s All-purpose Symbolic Instruction Code, универсальный символьный программный код для начинающих) разработан в 1964 г. Джоном Кемени (John Kemeny) и Томасом Курцем (Thomas Kurtz) из Дартмутского университета для студентов, которые не были ни математиками, ни инженерами, поэтому их не стоило заставлять возиться с перфокартами или сложными языками программирования. Вместо этого студент, сидя перед терминалом, набирал простую программу прямо на экране. Если строка начиналась с номера, она считалась строкой программы на БЕЙСИКе. Строка без номера считалась командой для системы. В отличие от АЛГОЛа в БЕЙСИКе программист не должен был указывать тип переменной. Большинство переменных по умолчанию считались вещественными. Во многих последующих реализациях БЕЙСИКа использовались не компиляторы, а интерпретаторы. На домашних компьютерах дебют БЕЙСИКа состоялся в 1975 г., когда Билл Гейтс (Bill Gates) и Пол Аллен (Paul Allen) написали интерпретатор БЕЙСИКа для компьютера «Альтаир 8800». Этот интерпретатор стал первым продуктом основанной ими корпорации Microsoft.

Язык программирования Паскаль (Pascal) унаследовал структуру АЛГОЛа и средства КОБОЛа для работы с записями. Он разработан в конце 1960-х швейцарским профессором информатики Николасом Виртом (Niklaus Wirth). Среди программистов компьютеров IBM PC Паскаль был очень популярен, правда, только в одной специфической реализации – Turbo Pascal фирмы Borland. Эта программа, написанная Андерсом Хейлсбергом (Anders Hejlsberg) из Дании, поступила в продажу в 1983 г. Она представляла собой интегрированную среду разработки (Integrated Development Environment, IDE) – текстовый редактор и компилятор были объединены в единую программу, что существенно облегчало разработку кодов.

На Паскале частично основан язык программирования Ада, разработанный для Минобороны США. Он назван в честь Августы Ады Байрон, первой женщины программиста.

С (Си). Этот чрезвычайно популярный язык был создан в 1969-1973 гг. в основном усилиями Денниса Ритчи (Dennis Ritchie) из Bell Telephone Laboratories. Его предшественником был язык В, который в свою очередь был упрощенным вариантом BCPL (Basic CPL), основанного на CPL (Combined Programming Language, комбинированный язык программирования). Первоначально планировался для замены ассемблера, чтобы иметь возможность создавать столь же эффективные и компактные программы, и в то же время не зависеть от конкретного типа процессор. До его появления ОС, как правило, писались на языке ассемблера для конкретного процессора. В 1973 г. ОС UNIX была написана (точнее, переписана) на С, и с тех пор язык и система идут по жизни рука об руку.

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