Turbo Pascal | это... Что такое Turbo Pascal? (original) (raw)

У этого термина существуют и другие значения, см. Turbo.

Turbo Pascal

Turbo Pascal 7.1.png Среда разработки Turbo Pascal 7.1
Тип Интегрированная среда разработки
Разработчик Borland International, Inc.
Написана на Паскаль, ассемблер
Операционная система CP/M, CP/M-86, MS-DOS, Windows 3.x, Macintosh
Языки интерфейса Паскаль
Аппаратная платформа x86
Последняя версия 7.1 (март 1994)
Состояние Abandonware
Лицензия Проприетарная

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

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

Содержание

История

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 и соответствующий синтаксис поддерживался как устаревший, использование обеих объектных моделей одновременно в одной и той же программе не поддерживается.

Этапы

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

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

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

Достоинства

Недостатки

Интересные факты

Используя (*), можно добиться и обратного: заставить код выглядеть как комментарий или как ассемблерный код:

program HelloWorld; () {) begin (} asm () WriteLn('Hello, World!'); () end () ReadLn; () {) end. (} ()

Будучи набранным в интегрированной среде, поставляемой с Turbo Pascal, этот код будет разноцветным.

Примечания

  1. Язык компьютера. — М.: Мир, 1989, с. 215—216.
  2. Antique Software: Turbo Pascal v1.0 (англ.)
  3. Antique Software: Turbo Pascal v5.5 (англ.)
  4. BP7FiX — исправление ошибки Runtime error 200 в откомпилированных программ
  5. T7TplFix — патч от Клауса Хартнегга для исправления модуля CRT
  6. Borland Pascal Wait/Delay — обзор способов сделать задержку в DOS

Литература

Ссылки

Просмотр этого шаблона IDE (сравнение)
Универсальные AnjutaVisual StudioNetBeansEclipseKDevelopXcodeGeanyMonoDevelopAptana StudioOpen WatcomKomodoKylix
Си/C++ Borland C++C++ Builder • Code::Blocks • CodeLitewxDev-C++Pelles COracle Solaris StudioQt CreatorUltimate++Microsoft QuickC
Бейсик PowerBASICTurbo BasicVisual BasicQBasicQuickBASICPureBasic
Java WebLogicBlueJ • DrJava • Greenfoot • JCreator • JDeveloperIntelliJ IDEAJBuilder • JGRASP
Паскаль DelphiLazarusMSEPascalABC.NETMIDletPascalPocketStudio • Morfik • Turbo PascalQuickPascalVisible PascalGeany
PHP Aptana Studio with PHP plugin • Delphi for PHP (RadPHP) • Eclipse PDTZend StudioNuSphere PhpED • PHP Expert EditorphpStormAdobe Dreamviewer
Python Boa Constructor • Eclipse+PyDev • EricGeanyIDLEKomodoNetBeans • PyCharm • PyScripter • SPE
ActionScript Adobe FlashAdobe Flash BuilderFlashDevelop • CodeDrive • IntelliJ IDEAEclipse FDT • Realaxy ActionScript Editor
Ruby RubyMine