Паскаль. История создания и развитие языка программирования. Язык программирования Pascal Операцией отношения языка программирования pascal является

Любое программное обеспечение создается при помощи различных языков программирования. Одним из таковых является Pascal, о котором слышало достаточно большое количество юзеров, однако, мало кто из них имеет хоть малейшее представление о нем.


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

Немного истории

Отцом языка Pascal является Никлаус Вирт, который был членом комитета по разработке языков программирования. Свое детище он представил мировому сообществу в 1969 году, а в качестве названия для продукта он выбрал фамилию известного ученого Блеза Паскаля, разработавшего первую в мире механическую машину, способную выполнять операции сложения двух чисел.

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

Эволюция Pascal

Этот язык программирования шагал в ногу со временем и развитием высоких технологий, поэтому постоянно совершенствовался. Таким образом, его эволюция выглядит следующим образом:

UCSD Pascal: эта версия Паскаля является усовершенствованной по сравнению с первой и была разработана в 1978 году. Основной инновацией, которая была реализована в ней, является порт компилятора, благодаря которому появилась возможность переносить код и вносить изменения в исходную систему.

Object Pascal: представляет собой объектное расширение для базовой версии Pascal и была создана Никлаусом Виртом совместно с компанией Apple.

Turbo Pascal: была разработана в 1983 году совместно с программистами из компании Borland и стала первой в истории интегрированной средой. Тем не менее считать эту версию революционной не совсем правильно, поскольку в ее основу был положен Odject Pascal, поэтому особых различий между ними не было. Стоит отметить, что на базе Turbo Pascal компания Microsoft разработала собственный язык программирования, однако, он получился неудачным и не смог укрепиться на рынке.

Современный Object Pascal: в наши дни этот язык программирования является очень популярным и востребованным, и выпускается в отдельной редакции, в которой собраны все самые лучшие инструменты и наработки. Большая популярность этой версии Паскаля обусловлена великолепной совместимостью со всеми существующими операционными системами на сегодняшний день.

Особенности

Язык программирования Pascal выгодно выделяется на фоне множества аналогичных продуктов благодаря тому, что в нем реализована строгая типизация и возможность структурирования данных и переменных. Благодаря этому работать с программным кодом очень легко, а различные синтаксические ошибки и неправильное написание кодов и команд полностью уходит на нет. Помимо этого, Pascal обладает простым и понятным интерфейсом, поэтому работать с ним комфортно и удобно даже тем пользователям, которые только начинают делать первые шаги в программировании.

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

Недостатки

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

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

Структура

Программный код любой программы, которая пишется на языке Pascal, начинается со специального тега Program, вслед за которым следует название утилиты, а в конце ставится знак препинания «точка с запятой». Стоит отметить, что это условия не является обязательным, поэтому его соблюдение не считается строгим. Вслед за этим тегом могут прописываться основные рабочие параметры программы, которые реализованы в виде списка конфигурационных файлов. Далее, идет основная часть программного кода - тело, которое разделено на отдельные блоки, содержащие информацию переменных, типов, процедур, функций и констант. После тела идет точка входа, которая также называется блоком операторов, помещенная между тегами begin и end, определяющими его границы. Для разделения операторов используется «;», а для закрытия блока просто ставиться точка.

Задействование модулей

Чтобы задействовать какие-либо модули в программе необходимо предварительно объявить о нем. Для этого предназначены инструкции подключения, которые имеют вид строки обычного программного кода, начинающейся со слова USES, вслед за котором идет перечисление всех внешних модулей, которые будут задействованы при написании программы. Стоит отметить, что возможность задействования модулей реализована далеко не во всех версиях Pascal. Например, самые первые редакции были лишены этой возможности.

Пунктуация

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

— «;» - предназначена для разделения операторов между собой и ставиться в конце строки. Не является обязательной к использованию перед закрывающим тегом end.

— «,» - отвечает за разделение различных объектов в пределах одного списка.

— «.» - ставиться в конце программного кода после закрывающего тега.

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

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

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


Для начала надо сказать, что Паскаль относится к семейству структурного программирования. То есть на паскале пишутся легко структурируемые программы.

Перечислим основы структурного программирования:

  1. Программа состоит из блоков с одним входом и одним выходом;
  2. Каждая программа может состоять из трех структур (линейная, ветвящаяся и циклическая);
  3. Алгоритм программы представляется в виде зависимых диаграмм.

История языка программирования паскаль началась тогда, когда его спецификацию опубликовали в 1970 году (то есть в этом году у паскаля юбилей – 30 лет служения программистам). Разрабатывался язык в течении 1968-1969 годов, а собственно опубликовал его спецификацию Никлаус Вирт. Поэтому его считают создателем языка программирования паскаль. Название языку было дано в честь известного физика, математика, философа из Франции – Блеза Паскаля.

Создавался язык, с одной стороны – для обучения этому самому процедурному программированию (основам структурного программирования), а с другой стороны – и для написания реальных задач. Как говорил Н.Вирт, язык, который не используется для написания программ, не может быть использован в качестве обучения. Написан паскаль был с помощью самого себя.

В самом начале своей истории язык программирования паскаль имел и ряд ограничений. В начале восьмидесятого года Керниган выпустил статью «Почему паскаль не является моим любимым языком программирования». Там он и описал те недостатки, которые есть у языка.

В 1987 году в США был разработан система, включающая в себя компилятор с языка паскаль (UCSD Pascal); в 1986 году компания Apple , при тесном сотрудничестве с Н. Виртом, разработала объектный паскаль; в 1989 году компания Borland расширила возможности своего компилятора языка Паскаль, включив в него объектные возможности (позаимствовала их у собратьев из Apple ); корпорация Microsoft также не осталась в стороне от истории языка программирования паскаль – они тоже выпустили компилятор паскаля с объектными возможностями, но эта разработка осталась почти неизвестной.

Компания Borland не остановилась в развитии паскаля, улучшала его объектную модель. В итоге, Borland сначала разработала Object Pascal , а затем среду программирования на его основе, которые мы все знаем – Delphi .

Кроме коммерческих реализаций паскаля, были и свободные – это GNU Pascal и Free Pascal . Сейчас разрабатываются компиляторы языка паскаль, с помощью которых можно создавать программы под платформу Microsoft Net .

За всю историю языка программирования паскаль было принято несколько стандартов, но основополагающих, на данный момент, три. Это:

Unextended Pascal – первоначальный;

Extended Pascal - расширенный

- Object-Oriented Extensions to Pascal – включаемый объектно-ориентированные расширения.

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

Больше, применяемых сегодня, никаких языков программирования период 60-х годов не принес, зато, как только он перешел на период 70-х годов сразу же в 1970-м году был разработан Паскаль, тот самый, который и сегодня изучается в школьной программе Информатики и на котором объясняется консольное программирование.

Язык Паскаль был создан Никлаусом Виртом в 1968-1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Язык назван в честь французского математика, физика, литератора и философа Блеза Паскаля, который создал первую в мире механическую машину, складывающую два числа. Первая публикация Вирта о языке датирована 1970 годом, представляя язык, автор указывал в качестве цели его создания - построение небольшого и эффективного языка, способствующего хорошему стилю программирования, использующему структурное программирование и структурированные данные. Последующая работа Вирта была направлена на создание на основе Паскаля языка системного программирования, с сохранением возможности вести на его базе систематический, целостный курс обучения профессиональному программированию. Результат этой работы - язык Модула-2. Особенностями языка являются строгая типизация и наличие средств структурного (процедурного) программирования. Паскаль был одним из первых таких языков. По мнению Вирта, язык должен способствовать дисциплинированному программированию, поэтому, наряду со строгой типизацией, в Паскале сведены к минимуму возможные синтаксические неоднозначности, а сам синтаксис автор постарался сделать интуитивно понятным даже при первом знакомстве с языком.

Тем не менее, первоначально язык имел ряд ограничений: невозможность передачи функциям массивов переменной длины, отсутствие нормальных средств работы с динамической памятью, ограниченная библиотека ввода-вывода, отсутствие средств для подключения функций написанных на других языках, отсутствие средств раздельной компиляции и т. п. Подробный разбор недостатков языка Паскаль того времени был выполнен Брайаном Керниганом в статье «Почему Паскаль не является моим любимым языком программирования» (эта статья вышла в начале 1980-х, когда уже существовал язык Модула-2, потомок Паскаля, избавленный от большинства его пороков, а также более развитые диалекты Паскаля). Некоторые недостатки Паскаля были исправлены в ISO-стандарте 1982 года, в частности, в языке появились открытые массивы, давшие возможность использовать одни и те же процедуры для обработки одномерных массивов различных размеров. Однако многие недостатки языка не проявляются или даже становятся достоинствами при обучении программированию. Кроме того, по сравнению с основным языком программирования в академической среде 1970-х (которым был Фортран, обладавший гораздо более существенными недостатками), Паскаль представлял собой значительный шаг вперёд. К 1980-м годам Паскаль стал основой для многочисленных учебных программ, в отдельных случаях на его основе были созданы специализированные обучающие языки программирования, так, в начале 1980-х годов в СССР для обучения школьников основам информатики и вычислительной техники Андрей Ершов разработал алголо-паскалеподобный «учебный алгоритмический язык».

Наиболее известной реализацией Паскаля, обеспечившей широкое распространение и развитие языка, является Turbo Pascal фирмы Borland, выросшая затем в объектный Паскаль для DOS (начиная с версии 5.5) и Windows и далее в Delphi, в которой были внедрены значительные расширения языка.

Диалекты Паскаля, применяемые в Turbo Pascal для DOS и Delphi для Windows, стали популярны из-за отсутствия других успешных коммерческих реализаций.

Язык программирования Pascal был создан Никлаусом Виртом, и назван в честь французского философа и математика XVII в. Блеза Паскаля. В то время Вирт был профессором информатики в Федеральном техническом университете в Швейцарии и нуждался в языке, с помощью которого можно было обучать студентов навыкам программирования.

Концепция Паскаля была разработана Н. Виртом примерно в 1970 году и Паскаль быстро получил широкое распространение благодаря легкости его изучения, наглядности составленных на нем текстов программ. Поскольку Паскаль послужил основой для разработки других языков программирования, таких как Ада и Модула-2, и поскольку многие языки содержат аналогичные Паскалю структуры, знание Паскаля является солидной базой для изучения других языков программирования.

В середине 70-х годов была создана попытка разработать международный стандарт на Паскаль. В результате в 1982 году появился стандарт ИСО 7185.

Язык Паскаль стараниями Андерса Хейлсберга превратился в мощную профессиональную систему программирования Turbo Rascal. После просуществовавшей сравнительно недолго и не получившей широкое распространения версии 1.0 в середине 1984 года появляется версия 2.0. Распространение которой пошло стремительными темпами. К осени 1985 года появляется версия3.0, отличающаяся от версии 2.0 следующими особенностями: компилятор и редактор стали работать существенно быстрее, появилась возможность передачи параметров в программу с помощью команды RUN, стал возможным вызов MS-DOS из программы, стала удобной работа с файлами. С начала 1988 года начинает распространяться версия 4.0.

Здесь Турбо Паскаль представлен в совершенно новой форме. Не только становится еще более быстрым компилятором, но и появляется совершенно новое программное окружение. Появилась возможность разбиения программы на части (модули), компилируемые по отдельности. К осени 1988 года появилась версия 5.0 с еще белее развитым программным окружением. Здесь заслуживает внимания прежде всего встроенный отладчик. Турбо Паскаль может использоваться в большинстве существующих для персональных компьютеров операционных систем.

Появление инструментальных средств Borlаnd Pascal with Objects и Delphi для разработки программ в среде Windows лишний раз показала какие по истине неисчерпаемые возможности таит в себе Паскаль. Borland Pascal и используемый в Delphi язык Object Pascal основываются на Turbo Pascal и развивают его идеи.

Delphi - компилятор языка Pascal. Delphi 1 был первым инструментарием разработки Windows приложений, объединившим в себе оптимизирующий компилятор, визуальную среду программирования и мощные возможности работы с базами данных. Годом позже Delphi 2 предложил все то же, но на новом уровне современной 32-битной операционной системы Windows 95 и Windows NT. Кроме того, Delphi 2 предоставил программисту 32-битовый компилятор, создававший более быстрые и эффективные приложения, мощные библиотеки объектов.

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

Delphi 4 является очередным шагом в эволюции компиляторов Паскаля с тех времен, когда более 16 лет назад Андерс Хейлсберг создал первый компилятор Turbo Pascal.

Среди множества языков программирования, предназначенных для обучения именно навыкам программирования, есть один, выделяющийся особо. Язык Паскаль, названный в честь французского ученого XVII столетия Блеза Паскаля, был разработан в конце 1960-х гг. ученым из Швейцарии Никлаусом Виртом, и далеко не с образовательной целью, как этот язык воспринимают теперь.

Наоборот, в те времена ученые пробовали разные языки программирования для практического применения. И позже этот ученый позднее создал ещё два языка программирования – Оберон и Модула, которые, правда, не получили распространения среди специалистов. Если быть точным, то 1968 году была создана первая версия языка Паскаль (на основе АЛГОЛа), а 1970 году – первый компилятор.

Особенностью Паскаля является его структурная направленность – любую программу здесь можно описать в виде объединения отдельных структурных элементов, или блоков, в единое целое. Это так называемое структурное программирование, сменившее линейное программирование – простейшую организацию написания программ, когда команды процессору записываются одна за другой, без какой либо структуры.

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

Особенно это стало ясно после того, когда около 1970-го года профессор Хоар опубликовал две статьи: «Аксиоматическая основа программирования для вычислительных машин» и «О структурной организации данных», в которых делается попытка осмыслить правильность составления алгоритмов программ с математической точки зрения. Как раз язык программирования Паскаль и является первым из языков, в котором имеются все необходимые инструменты для проверки эффективности написанных программ.

Ещё одной отличительной особенностью Паскаля является его строгая типизация данных, среди которых возник новый ранее не использовавшийся тип – перечислимый. Фактор строгой типизации сделал репутацию Паскалю как дисциплинирующего языка, приучающий программиста к логическому мышлению.

В Паскале допускается несвязанность программного кода (в отличие от тогдашних языков COBOL и FORTRAN), то есть допускается сколь угодно большое наличие пустых строк, что удобно при форматировании при написании комментариев. Программу на Паскале можно написать хоть в одну строчку – она все ровно будет работать, если написана в соответствии с правилами.

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

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