Turbo Pascal

Turbo Pascal (произносится «ту́рбо паска́ль») — интегрированная среда разработки программного обеспечения для платформ DOS и Windows 3.x и язык программирования в этой среде, диалект языка Паскаль от фирмы Borland.

Turbo Pascal

Среда разработки Turbo Pascal 7.0
Тип Интегрированная среда разработки
Разработчик Borland International, Inc.
Написана на Паскаль, ассемблер
Операционная система CP/M, CP/M-86, MS-DOS,
Windows 3.x, Macintosh
Языки интерфейса Паскаль
Первый выпуск 20 ноября 1983
Аппаратная платформа x86
Последняя версия 7.1 (март 1994)
Читаемые форматы файлов Turbo Pascal Desktop[d], Turbo Pascal configuration[d], Borland Turbo Pascal 5.5 compiled Unit[d], Borland Turbo Pascal 6.0 compiled Unit[d], Borland Turbo Pascal 7.0 compiled Unit[d], Turbo Pascal Overlay[d] и Turbo Pascal Help (v2)[d]
Состояние Abandonware
Лицензия Проприетарная
 Медиафайлы на Викискладе

Товарный знак Borland Pascal был зарезервирован для дорогих вариантов поставки (с бо́льшим количеством библиотек и исходным кодом стандартной библиотеки), оригинальная дешёвая и широко известная версия продавалась как Turbo Pascal. Borland является развитием Turbo Pascal и имеет отличия в синтаксисе (См. Object Pascal). Поддерживает x32.

История

Turbo Pascal — это среда разработки для языка программирования Паскаль. Используемый в Turbo Pascal диалект базировался на более раннем UCSD Pascal, получившем распространение, в первую очередь, на компьютерах серии Apple II. Компилирующая компонента Turbo Pascal была основана на компиляторе Blue Label Pascal, первоначально созданном в 1981 году Андерсом Хейлсбергом для операционной системы NasSys микрокомпьютера Nascom. Позднее он был переписан как Compass Pascal для операционной системы CP/M, затем как Turbo Pascal для DOS и CP/M. Одна из версий Turbo Pascal была доступна под Apple Macintosh примерно с 1986 года, но её разработка прекратилась примерно в 1992 году.

В 1982 году Филипп Кан приобрёл компилятор у Андерса Хейлсберга и перебрался из Парижа в Калифорнию, где основал компанию Borland.

Когда в 1983 году появилась первая версия Turbo Pascal, такой тип среды разработки был относительно новым. Во время дебюта на американском рынке Turbo Pascal продавался по цене в 49,99 доллара. Помимо привлекательной цены, встроенный компилятор Паскаля также был очень высокого качества. Приставка «Turbo» намекала как на скорость компиляции, так и на скорость производимого им исполняемого кода. Turbo Pascal создавал машинный код за один проход, без шага компоновки.

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

За первые два года было продано не менее 300 тысяч копий компилятора, что превзошло объём продаж всех прочих языков для микрокомпьютеров[1].

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

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

Помимо всего этого, имелось средство профилирования. Книги, включённые в поставку Borland Pascal, давали детальное описание языка ассемблера Intel вплоть до указания количества тактовых циклов, необходимых для выполнения каждой инструкции. В общем и целом, система давала превосходные возможности для оптимизации кода; пользователю не требовалось пользоваться чем-либо, кроме среды разработки. Всё было сделано так идеально, что даже школьник мог этим пользоваться. Эти качества позволили версии Паскаля от Borland стать стандартом языка Паскаль де-факто.

Turbo Pascal часто используется в школе

С начала 1990-х годов TP/BP используется в университетах для изучения фундаментальных концепций программирования.

Вероятно, разработка Microsoft Pascal была прекращена из-за конкуренции с высоким качеством и небольшой ценой Turbo Pascal. Другая версия гласит, что Borland заключил соглашение с Microsoft на прекращение разработки Turbo Basic (среды разработки для BASIC, ответвившейся от Turbo Pascal), если Microsoft прекратит разработку Microsoft Pascal. Некоторое время Microsoft выпускал QuickPascal, который был почти на 100 % совместим с Turbo Pascal.

В течение нескольких лет Borland улучшал не только среду разработки, но и язык. В версии 5.0 появились процедурные типы. В версии 5.5 в него были введены передовые возможности объектно-ориентированного программирования. Интегрированная среда так же была реализована с использованием ООП. Последней выпущенной версией была 7.0. Профессиональная поставка Borland Pascal 7.0 включала в себя среду разработки, компилятор и отладчики для создания программ под реальный режим DOS, под DOS в 16-битном защищенном режиме с использованием расширителя DOS RTTM и драйвера DPMI, а также под Windows 3.x. Наряду с универсальными IDE и компилятором в поставку входил Borland Pascal for Windows с графической IDE для Windows 3.x и объектно-ориентированной библиотекой OWL, а также Turbo Pascal 7.0 для создания DOS-программ реального режима. Turbo Pascal 7.0 можно было приобрести и отдельно.

С 1995 года в Borland прекратили разработку Turbo Pascal и предложили в качестве замены среду разработки Delphi. Новая версия языка подверглась изменению (в особенности ООП), и языку вернулось изначальное название, закреплённое разработчиками Apple Object Pascal. Старая объектная модель Turbo Pascal и соответствующий синтаксис был объявлен устаревшим, двоичная взаимозаменяемость между объектами обеих моделей не предусмотрена, но объекты в старом стиле по-прежнему поддерживаются компилятором и при желании могут использоваться программистом, как было сделано в библиотеке KOL.

Этапы

  • Turbo Pascal 1.0, 20 ноября 1983 года[2]. Компилирует непосредственно в машинный код. Требует 32 килобайта оперативной памяти. Стоит меньше 50 долларов. Имеет интегрированный компилятор/редактор, высокую скорость компиляции. Позволяет размещать динамические данные в куче (heap) — динамической области памяти.
  • Turbo Pascal 2.0, 1984 год. Увеличен размер создаваемой программы — позволяет использовать до 64 килобайт для кода, стека и данных. Версия для DOS поддерживает арифметический сопроцессор и двоично-десятичную арифметику (Binary-coded decimal, BCD).
  • Turbo Pascal 3.0, 1985 год. Поддержка оверлейной структуры. Поддержка графических режимов. Специальные подпрограммы формирования изображений для IBM PC-совместимых компьютеров, включая «черепаховую» графику. Инструментальные пакеты.
  • Turbo Pascal 4.0, 1987 год. Компиляция осуществлялась в EXE-файл, а не в COM, как ранее. Впервые введена поддержка модулей с раздельной компиляцией. Размер программы ограничен только объёмом оперативной памяти. Управляемая с помощью меню интегрированная среда разработки (англ. Integrated Development Environment, IDE), интерфейс в виде полноэкранного редактора с выпадающими меню в верхней части экрана и окном вывода и списком «горячих» клавиш в нижней части. Интеллектуальная компоновка модулей. Автономный компилятор командной строки, введенный для больших проектов, компиляция которых затруднялась ресурсоемкой IDE. Убрана поддержка оверлеев. Контекстно-чувствительная система помощи. Опции компилятора настраивались в IDE. Интеллектуальный встроенный компоновщик, который исключал из откомпилированных файлов модулей неиспользуемые в программе процедуры и функции.
  • Turbo Pascal 5.0, 1988 год. Встроенный отладчик позволял трассировать исходный текст, вводить точки останова, просматривать и изменять содержимое переменных, не покидая IDE. Отдельный отладчик (Turbo Debugger), который в более поздних версиях позволял отлаживать программу с удаленной машины через RS-232-интерфейс. Эмуляция арифметического сопроцессора. Поддержка графических драйверов BGI (Borland Graphics Interface). Возвращена поддержка оверлеев. В комплект поставки был включен Turbo Assember, в свою очередь, компилятор Turbo Pascal поддерживал включаемые в Pascal-программы OBJ-файлы. Введены процедурные типы.
  • Turbo Pascal 5.5, 2 мая 1989 года[3]. Объектно-ориентированное программирование. Возможность копирования в программу примеров из справочной системы. Электронный учебник на диске. Turbo Profiler — профилировщик, фиксирующий время выполнения каждого блока анализируемой программы в машинных циклах и миллисекундах для последующей оптимизации критических участков. Автономный отладчик Turbo Debugger дополнен средствами для работы с объектами — возможно просматривать иерархию объектов, вызывать методы, просматривать и модифицировать поля. Появилась возможность пошаговой отладки программы.
  • Turbo Pascal 6.0, 1990 год. Библиотека Turbo Vision. Новая IDE, переписанная с использованием Turbo Vision, поддерживающая мышь и редактирование нескольких файлов одновременно в разных окнах. Возможность задания во встроенном отладчике условных и по количеству проходов точек останова. Встроенный ассемблер BASM, позволяющий в исходном тексте программы делать ассемблерные вставки. Protected-поля и методы для объектов. Работающий в защищённом режиме компилятор командной строки.
  • Turbo Pascal for Windows. Создание 16-разрядных программ под Windows. Библиотека объектов Objects Windows Library (OWL), сходная по идеологии с Turbo Vision. Графическая IDE, работающая под Windows.
  • Borland Pascal 7.0, 1992 год. Выпущен Borland Pascal 7.0, включающий в себя более дешёвый и менее мощный Turbo Pascal 7.0, который поставлялся также отдельно. BP 7.0 позволял создавать программы под реальный и защищённый 16-битный режим DOS и Windows. Была введена поддержка открытых массивов, добавлено новое ключевое слово «public» для доступных полей и методов объекта. Открыты исходные тексты системных библиотек и функций времени выполнения (RTL). Введена подсветка синтаксиса.
  • Borland Pascal 7.1, 1994 год. Пакет обновлений, состоящий из исполняемых файлов компиляторов командной строки реального и защищенного режимов, интегрированных сред, откомпилированных системных библиотек, отладчика, диспетчеров защищенного режима и так далее. Предназначался для установки поверх версии 7.0 и не мог работать в качестве самостоятельной отдельной версии.

Библиотека Turbo Vision

Turbo Vision — это библиотека для разработки оконных, объектно-ориентированных, событийно-управляемых программ в среде MS-DOS в псевдографическом текстовом режиме.

Достоинства и недостатки Турбо Паскаля

Достоинства

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

Недостатки

  • Компилятор рассчитан на реальный режим DOS, применение которого сходит на нет. Однако в последних версиях компилятора и среды введена поддержка защищённого режима вместе с соответствующим отладчиком (TD).
  • В модуле CRT имеется ошибка (некорректный подсчёт количества циклов для функции delay, не рассчитанный на быстрые процессоры, процессоры с переменной частотой и многозадачные среды), из-за которой при запуске программы на компьютерах с тактовой частотой более 200 MHz сразу происходило аварийное завершение с сообщением «Runtime error 200 at…». Существуют разные варианты исправления модуля CRT[4][5][6]. В варианте Клауса Хартнегга ошибка 200 не возникает, но длительность Delay на быстрых компьютерах меньше желаемой, и эта проблема по незнанию иногда тоже считается недостатком Turbo Pascal.
  • При использовании встроенного ассемблера выявлена неправильная работа с метками. Операторы, на которые указывали метки, выполнялись даже если на них не осуществлялись переходы.

Примечания

Литература

  • Е. А. Зуев. Программирование на языке Turbo Pascal 6.0, 7.0, М.:Веста,Радио и связь, 1993, — С.376, ISBN 5-256-01218-5
  • Кассера В. Ф. Turbo Pascal 7.0, Диасофт, 2003, ISBN 5-93772-097-0
  • Эллиот Б. Коффман. Turbo Pascal = Turbo Pascal Web Update. М.: Вильямс, 2005. — С. 896. — ISBN 0-201-35086-6.
  • Моргун Александр Николаевич. Справочник по Turbo Pascal для студентов. М.: Диалектика, 2006. — С. 608. — ISBN 5-8459-1028-5.
  • Нэйл Рубенкинг. Turbo Pascal для Windows = Turbo Pascal for Windows. Techniques and Utilites. М.: Мир, 1993. — С. 535.
  • Фаронов В. В. Turbo Pascal. Наиболее полное руководство. BHV-Санкт-Петербург, 2007. ISBN 5-94157-295-6
  • Фаронов В. В. Turbo Pascal 7.0: Практика программирования. КноРус, 2012. ISBN: 978-5-85971-889-4

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.