Interested Article - Turbo Pascal
- 2020-03-27
- 1
Turbo Pascal ( Турбо Паскаль ) — интегрированная среда разработки программного обеспечения для платформ DOS и Windows 3.x и язык программирования в этой среде, диалект языка Паскаль от фирмы Borland .
Товарный знак Borland Pascal был зарезервирован для дорогих вариантов поставки (с бо́льшим количеством библиотек и исходным кодом стандартной библиотеки), оригинальная дешёвая и широко известная версия продавалась как Turbo Pascal. Borland является развитием Turbo Pascal и имеет отличия в синтаксисе (См. Object Pascal ). Поддерживает x32.
История
Используемый в Turbo Pascal диалект базировался на более раннем UCSD Pascal , получившем распространение, в первую очередь, на компьютерах серии Apple II . Компилирующая компонента Turbo Pascal была основана на компиляторе , первоначально созданном в 1981 году Андерсом Хейлсбергом для операционной системы микрокомпьютера . Позднее он был переписан как для операционной системы 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 тысяч копий компилятора, что превзошло объём продаж всех прочих языков для микрокомпьютеров .
Для того времени это была потрясающая среда разработки. Она была проста и интуитивно понятна, с хорошо организованным меню. Ранние версии использовали раскладку горячих клавиш . В более поздних версиях появилась возможность быстро получить определение ключевого слова языка, просто поставив курсор на ключевое слово и нажав клавишу справки. Справочные статьи часто включали примеры кода, использующего данное ключевое слово. Это позволяло неопытным программистам изучать Паскаль даже без помощи книг, используя лишь среду разработки. В поставку входило большое количество исходных текстов демонстрационных и прикладных программ. В их числе были даже шахматы .
Среда позволяла легко встраивать в код на Паскале вставки на языке ассемблера . Пользователь имел возможность проходить программу шаг за шагом; при переходе на ассемблерный блок это также работало. В любой момент пользователь мог добавить переменную или регистр в удобно расположенное окно для наблюдения за ними. При построчной отладке программ, использующих графические режимы IBM PC , происходило корректное переключение между графическим режимом программы и текстовым режимом среды разработки.
Помимо всего этого, имелось средство профилирования . Книги, включённые в поставку Borland Pascal, давали детальное описание языка ассемблера Intel вплоть до указания количества тактовых циклов, необходимых для выполнения каждой инструкции. В общем и целом, система давала превосходные возможности для оптимизации кода; пользователю не требовалось пользоваться чем-либо, кроме среды разработки. Всё было сделано так идеально, что даже школьник мог этим пользоваться. Эти качества позволили версии Паскаля от Borland стать стандартом языка Паскаль де-факто .
С начала 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 года . Компилирует непосредственно в машинный код. Требует 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. Отдельный отладчик ( ), который в более поздних версиях позволял отлаживать программу с удаленной машины через RS-232-интерфейс. Эмуляция арифметического сопроцессора. Поддержка графических драйверов BGI ( Borland Graphics Interface ). Возвращена поддержка оверлеев. В комплект поставки был включен Turbo Assember , в свою очередь, компилятор Turbo Pascal поддерживал включаемые в Pascal-программы OBJ-файлы . Введены процедурные типы.
- Turbo Pascal 5.5, 2 мая 1989 года . Объектно-ориентированное программирование . Возможность копирования в программу примеров из справочной системы. Электронный учебник на диске. — профилировщик, фиксирующий время выполнения каждого блока анализируемой программы в машинных циклах и миллисекундах для последующей оптимизации критических участков. Автономный отладчик 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 год. Пакет обновлений, состоящий из исполняемых файлов компиляторов командной строки реального и защищенного режимов, интегрированных сред, откомпилированных системных библиотек, отладчика, диспетчеров защищенного режима и так далее.
Библиотека Turbo Vision
Turbo Vision — это библиотека для разработки оконных, объектно-ориентированных , событийно-управляемых программ в среде MS-DOS в псевдографическом текстовом режиме .
Достоинства и недостатки
Среди достоинств — удобство среды разработки, включающей функциональный отладчик, доступный в любой момент, контекстная справочная система, по которой можно изучать язык без обращения к сторонним источникам. Также к достоинствам системы относится высокая скорость компиляции и высокая скорость выполнения откомпилированных программ, встроенная возможность использовать вставки на языке ассемблера .
Основной недостаток состоит в том, что компилятор рассчитан на реальный режим DOS, применение которого сходит на нет. Однако в последних версиях компилятора и среды введена поддержка защищённого режима вместе с соответствующим отладчиком (TD).
В модуле CRT имеется ошибка (некорректный подсчёт количества циклов для функции delay, не рассчитанный на быстрые процессоры, процессоры с переменной частотой и многозадачные среды), из-за которой при запуске программы на компьютерах с тактовой частотой более 200 МГц сразу происходило аварийное завершение с сообщением «Runtime error 200 at…». Существуют разные варианты исправления модуля CRT . В варианте Клауса Хартнегга ошибка 200 не возникает, но длительность Delay на быстрых компьютерах меньше желаемой, и эта проблема иногда тоже считается недостатком Turbo Pascal.
При использовании встроенного ассемблера выявлена неправильная работа с метками. Операторы, на которые указывали метки, выполнялись, даже если на них не осуществлялись переходы.
Примечания
- Язык компьютера. — М.: Мир, 1989, с. 215—216.
- от 21 декабря 2010 на Wayback Machine (англ.)
- от 24 ноября 2010 на Wayback Machine (англ.)
- . Дата обращения: 15 февраля 2008. 6 января 2012 года.
- 15 сентября 2008 года.
- от 1 августа 2009 на Wayback Machine — обзор способов сделать задержку в DOS
Литература
- Е. А. Зуев. Программирование на языке 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 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
Ссылки
- от 26 октября 2007 на Wayback Machine (англ.)
- (англ.)
- (англ.)
- на сайте bitsavers.org (англ.)
Для улучшения этой статьи
желательно
:
|
- 2020-03-27
- 1