Турбо Паскаль
Оригинальный автор(ы) | Андерс Хейлсберг (в Borland) |
---|---|
Разработчик(и) | Борланд |
Первоначальный выпуск | 20 ноября 1983 г [ 1 ] [ 2 ] |
Операционная система | CP/M , CP/M-86 , DOS , Windows 3.x , Macintosh |
Платформа | З80 , х86 , 68000 |
Доступно в | Английский |
Тип | Интегрированная среда разработки |
Turbo Pascal — это система разработки программного обеспечения, включающая в себя компилятор и интегрированную среду разработки (IDE) для языка программирования Pascal, работающую в операционных системах CP/M , CP/M-86 и DOS . Первоначально он был разработан Андерсом Хейлсбергом из Borland и отличался очень быстрой компиляцией. Turbo Pascal и более поздний, но похожий на него Turbo C сделали Borland лидером в области инструментов разработки для ПК.
как более дешевый Turbo Pascal, так и более дорогой Borland Pascal Для версий 6 и 7 (две последние версии) производились ; Borland Pascal был больше ориентирован на профессиональную разработку программного обеспечения, с большим количеством библиотек и стандартным исходным кодом библиотек . Название Borland Pascal также используется в более общем смысле для диалекта Borland языка Pascal, значительно отличающегося от Standard Pascal.
Borland бесплатно выпустила три старые версии Turbo Pascal из-за их исторического интереса: оригинальный Turbo Pascal (теперь известный как 1.0) и версии 3.02 и 5.5 для DOS. [ 3 ] [ 4 ] [ 5 ]
История
[ редактировать ]Филипп Кан впервые увидел возможности Borland, своей недавно созданной компании по разработке программного обеспечения, в области инструментов программирования. Исторически сложилось так, что подавляющее большинство программистов рассматривали свой рабочий процесс как цикл редактирования/компиляции/компоновки с отдельными инструментами, предназначенными для каждой задачи. Программисты писали исходный код с помощью текстового редактора ; затем исходный код компилировался в объектный код (часто требуя нескольких проходов), а компоновщик объединял объектный код с библиотеками времени выполнения для создания исполняемой программы.
На заре рынка IBM PC (1981–1983 гг.) все основные поставщики инструментов программирования создавали компиляторы, которые работали схожим образом. Например, система Microsoft Pascal состояла из двух этапов компиляции и последнего этапа компоновки (который мог занять несколько минут в системах, где в качестве вторичного хранилища использовались только дискеты, хотя программы были намного меньше, чем сегодня). Этот процесс был менее ресурсоемким, чем более поздняя интегрированная среда разработки (IDE). Поставщики инструментов разработки программного обеспечения ориентировали свои продукты на профессиональных разработчиков, и цена этих базовых инструментов, а также вспомогательных инструментов, таких как профилировщики, достигала сотен долларов.
Идея Кана заключалась в том, чтобы объединить все эти функции в интегрированный набор инструментов программирования, обеспечивающий гораздо лучшую производительность и использование ресурсов, чем обычные профессиональные инструменты разработки, и назначить низкую цену за пакет, включающий собственный текстовый редактор, компилятор и все необходимые функции. создавать исполняемые программы. Программа продавалась по почте за долларов США 49,95 без использования установленных каналов продаж (розничных торговцев или реселлеров). [ 6 ]
Компилятор Turbo Pascal был основан на компиляторе Blue Label Pascal, первоначально созданном для кассетной операционной системы NasSys микрокомпьютера Nascom в 1981 году Андерсом Хейлсбергом . Borland лицензировала ядро компилятора PolyPascal Хейлсберга ( Poly Data — название компании Хейлсберга в Дании) и добавила пользовательский интерфейс и редактор. Андерс Хейлсберг присоединился к компании в качестве сотрудника и был архитектором всех версий компилятора Turbo Pascal и первых трех версий Borland Delphi . [ 3 ]
Компилятор был сначала выпущен как Compas Pascal для CP/M , а затем выпущен 20 ноября 1983 года. [ 2 ] как Turbo Pascal для CP/M (включая Apple II , оснащенный Z-80 SoftCard , эффективно преобразующий Apple на базе 6502 в машину CP/M, Commodore 64 с картриджем CP/M и более позднюю DEC Rainbow ), Машины CP/M-86 и DOS. При запуске на рынке США Turbo Pascal продавался по цене долларов США 49,99 , что в то время было очень низкой ценой для компилятора. Интегрированный компилятор Pascal был хорошего качества по сравнению с другими продуктами Pascal того времени. [ 7 ]
Название Turbo намекало на скорость компиляции и создаваемых исполняемых файлов. Цикл редактирования/компиляции/выполнения был быстрым по сравнению с другими реализациями Паскаля, поскольку все, что связано со сборкой программы, хранилось в оперативной памяти, а также потому, что это был однопроходный компилятор, написанный на языке ассемблера . Компиляция происходила намного быстрее, чем компиляторы для других языков (даже более поздние компиляторы Borland для C), [ нужна ссылка ] и других компиляторов Pascal, а также было сэкономлено время программиста, поскольку программу можно было скомпилировать и запустить из IDE. Скорость выполнения этих программ в формате COM стала открытием для разработчиков, чей единственный опыт программирования микрокомпьютеров был с интерпретируемым BASIC или UCSD Pascal , который компилировался в p-код , который затем интерпретировался во время выполнения.
В отличие от некоторых других инструментов разработки, диски Turbo Pascal не имели защиты от копирования . Turbo Pascal поставляется с «Книжной лицензией»: «Вы должны обращаться с этим программным обеспечением как с книгой ... [оно] может использоваться любым количеством людей... может свободно перемещаться с одного компьютера на другое при условии, что поскольку нет возможности использовать его в одном месте, пока он используется в другом». [ 8 ]
Прием
[ редактировать ]Borland продала около 250 000 копий Turbo Pascal за два года, что Брюс Ф. Вебстер из Byte назвал «удивительным показателем для компьютерного языка». [ 9 ] Шесть месяцев спустя он сообщил, что эта цифра выросла до «более 400 000 копий на рынке, на котором, по оценкам, было всего 30 000 потенциальных покупателей». [ 10 ]
Джерри Пурнель написал в журнале в феврале 1984 года, что Turbo Pascal «близок к тому, к чему, по моему мнению, движется компьютерная индустрия: хорошо документированный, стандартный, множество хороших функций и разумная цена». Ему не понравилось требование покупать еще одну лицензию на распространение двоичных файлов, но он отметил, что «оказывается, это не намного больше. Borland хочет всего лишь еще на 100 долларов » больше базовой цены в 49,95 долларов , и что «моё первое впечатление о Turbo таково, что это вероятно, стоит $149,95 . Похоже, он делает все, что делает MT+ с пакетом программирования Speed , и, возможно, даже делает это быстрее и лучше». [ 11 ] В июле Пурнель сообщил, что, по словам Кана, IBM отказалась перепродавать Turbo Pascal, пока цена не достигнет хотя бы 200 долларов ; он отметил, что «Turbo намного лучше, чем Pascal, который продает IBM», и в отличие от последнего был совместим с IBM PCjr . [ 12 ] Рецензенты Three Byte похвалили Turbo Pascal в том же выпуске. Один рецензент сказал, что из-за различий в диалектах «Turbo на самом деле не Паскаль. Но он очень полезен». Предупреждая, что он не подходит для разработки очень больших приложений, он пришел к выводу, что Turbo Pascal «хорошо написан, временами интересен в использовании и достаточно быстр, чтобы компенсировать его немногие недостатки... это выгодная сделка, которую не следует быть пропущено». Второй назвал версию для DOS «без сомнения, лучшим программным обеспечением, которое я когда-либо покупал», а третий сказал, что Borland «заслуживает похвалы» за «дорогую» версию CP/M. [ 13 ]
Пурнель в августе 1985 года назвал версию 3.0 «явным улучшением и без того впечатляющей версии 2» и сказал, что новая книжная лицензия «кажется мне вполне справедливой». Он сказал, что «Turbo Pascal должен быть лучшим среди языков на современном рынке», и что Borland является лидером отрасли в «поставке превосходных продуктов по разумным ценам». [ 14 ] Несмотря на обнаружение того, что журнал назвал «серьезной ошибкой» в версии 3.0, и снижение совместимости с клонами ПК , Байт в феврале 1986 года заявил, что «трудно не рекомендовать Turbo всем, кто хочет программировать на Паскале», ссылаясь на улучшение скорости и графики. процедуры. [ 15 ] В обзоре четырех других компиляторов Pascal в декабре 1986 года журнал охарактеризовал Turbo Pascal как «практичный и привлекательный для программистов всех уровней подготовки». [ 16 ] Помимо разрешения приложений размером более 64 КБ, компания Byte в 1988 году сообщила о значительно более быстрой компиляции и выполнении версии 4.0 и что, хотя она не поддерживала «почти полную» обратную совместимость предыдущих версий, преобразование было быстрым и простым. Рецензент заключил: «Я настоятельно рекомендую Turbo Pascal 4.0 как дополнение к репертуару программного обеспечения любого программиста». [ 17 ]
Вебстер похвалил этот язык, заявив в августе 1985 года, что Turbo Pascal «наиболее известен своим небольшим размером, невероятной скоростью компиляции и быстрым временем выполнения». Он отметил, что качество и низкая цена программного обеспечения были особенно удивительны после « фиаско JRT Pascal », и заявил, что даже при новой более высокой цене в 69,95 долларов версия 3.0 «вероятно, все еще была лучшим предложением по программному обеспечению на рынке». [ 9 ] Журнал PC Magazine в ноябре 1984 года также похвалил его, заявив, что «ничего подобного Turbo Pascal для PC-DOS никогда раньше не существовало». Он высоко оценил низкую цену, скорость и необычайно хорошую документацию для компилятора, а также отметил существование множества утилит для Turbo Pascal от других компаний. В обзоре говорилось, что IDE, которая упростила цикл редактирования-компиляции-запуска-отладки, сделала Turbo Pascal, как и BASIC, доступным для новых программистов. [ 18 ]
В 1989 году компания Byte включила Turbo C и Turbo Pascal в число победителей премии Byte Awards в категории «Выдающиеся достижения». Ссылаясь на пользовательский интерфейс и постоянное внимание к скорости, журнал заявил, что «для быстрого прототипирования нет ничего лучше». [ 19 ] В том же выпуске Пурнель снова похвалил версии 4.0 и 5.0 Turbo Pascal. Ссылаясь на Анакреон как на «хороший пример того, насколько сложную программу можно написать на Паскале», а также на множество библиотек Borland и других разработчиков, он написал: «Я думаю, что это вполне может быть языком для всех нас». [ 20 ]
Скотт МакГрегор из Microsoft сказал, что Билл Гейтс «не мог понять, почему наши программы работают так медленно» по сравнению с Turbo Pascal. «Он приводил бедного Грега Уиттена [директора по программированию языков Microsoft] и кричал на него полчаса», потому что их компания не могла победить небольшой стартап Кана, вспоминал МакГрегор. [ 21 ]
Преемники
[ редактировать ]К 1995 году компания Borland отказалась от Turbo/Borland Pascal и заменила его средой быстрой разработки приложений (RAD) Borland Delphi , основанной на Object Pascal. версии 32- и 64-битные Delphi по-прежнему поддерживают более переносимые усовершенствования Pascal более ранних продуктов (т. е. те, которые не относятся к 16-битному коду), включая более раннюю статическую объектную модель. Обратная совместимость этого языка означает, что большую часть старого кода Turbo Pascal все еще можно скомпилировать и запустить в современной среде.
Другие поставщики выпустили инструменты разработки программного обеспечения, совместимые с Turbo Pascal. Наиболее известными являются Free Pascal и Virtual Pascal .
Синтаксис
[ редактировать ]- Паскаль не чувствителен к регистру .
- Исторически сложилось так, что комментарии Паскаля прилагаются.
{ within pairs of braces }
, или(* left parenthesis/asterisk and asterisk/right parenthesis pairs *)
, и они могут занимать любое количество строк. Более поздние версии Borland Pascal также поддерживали комментарии в стиле C++.// preceded by two forward slashes
, которые заканчиваются в конце строки. - Синтаксис оператора
case
более гибок, чем стандартный Паскаль. - В наборах может быть не более 256 (2 8 ) члены.
- Стандартный Паскаль
String
поддерживается байт, которому предшествует длина, и занимает фиксированный объем памяти; в более поздних версиях добавлен более гибкий тип с нулевым завершением, назвавший старый тип «короткой строкой». Старый исходный код, который обрабатывает строки нестандартными способами (например, напрямую манипулируя длиной байта, напримерS[0]:=14
для усечения строки) строки должны быть либо объявлены как короткие, либо переписаны.
Это классический «Привет, мир!» программа в Турбо Паскале:
program HelloWorld;
begin
WriteLn('Hello World')
end.
Он запрашивает имя и записывает его на экран сто раз:
program WriteName;
var
i : Integer; {variable to be used for looping}
Name : String; {declares the variable Name as a string}
begin
Write('Please tell me your name: ');
ReadLn(Name); {ReadLn returns the string entered by the user}
for i := 1 to 100 do
begin
WriteLn('Hello ', Name)
end;
readln;
end.
Функции
[ редактировать ]Язык ассемблера
[ редактировать ]Хотя все версии Turbo Pascal могли включать встроенный машинный код , начиная с версии 6 появилась возможность интегрировать язык ассемблера в исходный код Pascal. [ 22 ]
Поддержка различных моделей памяти x86 обеспечивалась посредством встроенного ассемблера, параметров компилятора и языковых расширений, таких как ключевое слово «absolute». Турбо Ассемблер TASM, стандартный ассемблер x86, независимый от TP и совместимый по исходному коду с широко используемым Microsoft Macro Assembler MASM, поставлялся с расширенными версиями «Borland Pascal».
Отладка и профилирование
[ редактировать ]В среде IDE предусмотрено несколько средств отладки, включая пошаговую обработку , проверку и изменение переменных, а также условные точки останова. В более поздних версиях блоки ассемблера можно было преодолевать поэтапно. Пользователь мог добавлять точки останова для переменных и регистров в окне IDE. Программы, использующие графический режим IBM PC, могли автоматически или вручную переключаться между графическим и текстовым режимами или отображать оба режима на двух экранах. Для случаев, когда относительно простых средств отладки IDE было недостаточно, Turbopower Software разработала более мощный отладчик T-Debug. [ 23 ] Эта же компания разработала Turbo Analyst и Overlay Manager для Turbo Pascal. Позднее T-Debug был обновлен для Turbo Pascal 4, но прекращен с выпуском Turbo Debugger (TD) от Borland, который также допускал некоторое аппаратное вмешательство на компьютерах, оснащенных новым процессором 80386 .
TD обычно поставлялся вместе с Turbo Assembler и Turbo Profiler, профилировщиком кода , который сообщал о времени, затраченном на каждую часть программы, чтобы помочь оптимизации программы путем поиска узких мест. [ 24 ] В книгах, входящих в состав Borland Pascal, содержалось подробное описание языка ассемблера Intel , включая количество тактов, необходимых для каждой инструкции. Разработка и отладка могли осуществляться полностью в среде IDE, если не требовались расширенные средства отладки Turbopower T-Debug, а затем и TD.
Более поздние версии также поддерживали удаленную отладку через кабель связи RS-232 . [ 25 ]
Единицы
[ редактировать ]За прошедшие годы Borland усовершенствовала не только IDE, но и расширила язык программирования. Система разработки, основанная на стандарте ISO Pascal, требует расширений, специфичных для реализации, для разработки реальных приложений на целевых платформах. Стандартный Паскаль спроектирован так, чтобы быть независимым от платформы, поэтому не требует низкоуровневого доступа к средствам, зависящим от оборудования или операционной системы. Стандартный Паскаль также не предписывает, как следует разбивать большую программу на отдельные компилируемые модули. Начиная с версии 4, Turbo Pascal перенял концепцию единиц из UCSD Pascal . Модули использовались как внешние библиотеки функций, подобно объектным файлам, используемым в других языках, таких как FORTRAN или C.
Например, линия uses crt;
в программу включен модуль crt; тот uses
это механизм использования других модулей компиляции. interface
и implementation
были ключевыми словами, используемыми для указания внутри устройства того, что было (и что не было) видно за пределами устройства. Это похоже на public
и private
ключевые слова на других языках, таких как C++ и Java .
Единицы в Borland Pascal были аналогичны Modula-2 отдельной системе компиляции . В 1987 году, когда был выпущен Turbo Pascal 4, Modula-2 стал образовательным языком, который мог заменить Pascal. Фактически у Borland был компилятор Turbo Modula-2, но он был выпущен только для CP/M (его пользовательский интерфейс был почти идентичен интерфейсу Turbo Pascal 1–3) без особого маркетинга. Была разработана значительно улучшенная версия для DOS, но, поскольку Borland не желала публиковать результаты, авторы, включая Нильса Йенсена, выкупили права и сформировали Jensen & Partners International для публикации ее под названием JPI TopSpeed Modula-2. Вместо этого компания Borland решила реализовать отдельную компиляцию в своем стандартном продукте Pascal.
Раздельная компиляция не была частью стандартного языка Паскаль, но уже была доступна в UCSD Pascal , который был очень популярен на 8-битных машинах. Синтаксис модулей Turbo Pascal, похоже, был заимствован из UCSD Pascal. [ 26 ] Более ранние версии Turbo Pascal, разработанные для компьютеров с ограниченными ресурсами, поддерживали систему динамического связывания отдельно скомпилированных объектов «связывай и выполняй», аналогичную системе, широко используемой в BASIC. Кроме того, в языке было указание включать в программу отдельный исходный код, когда это необходимо, а наложение поддерживалось из TP3, но, как и в случае с наложениями, связанные объекты должны были помещаться в исходное (ограниченное) пространство памяти программы. По мере развития вычислительных средств и средств хранения в Turbo Pascal была добавлена возможность генерировать большие EXE-файлы с возможностью статического связывания и коллективной загрузки отдельно скомпилированных объектов.
Файлы .TPU, выводимые при компиляции модуля Turbo Pascal, тесно связаны с внутренними структурами компилятора, а не со стандартными связываемыми файлами .OBJ. Это сократило время компиляции и компоновки, но означало, что файлы .TPU нельзя было связать с выводом других языков или даже использовать с другими выпусками Turbo Pascal, если они не были перекомпилированы из исходного кода.
Объектно-ориентированное программирование
[ редактировать ]Начиная с версии 5.5 были введены некоторые возможности объектно-ориентированного программирования : классы , наследование , конструкторы и деструкторы . [ 5 ] IDE уже была дополнена интерфейсом браузера объектов, показывающим связи между объектами и методами и позволяющим программистам легко перемещаться по модулям. Borland назвала свой язык Object Pascal , который был значительно расширен и стал языком, лежащим в основе Delphi (который имеет две отдельные системы ООП). Название «Object Pascal» произошло от расширений Pascal, разработанных Apple Computer для программирования компьютеров Lisa и Macintosh . Создатель Паскаля Никлаус Вирт консультировал при разработке этих расширений, основанных на типе записи , уже присутствующем в Паскале.
Проблема с ЭЛТ на быстрых процессорах
[ редактировать ]Несколько версий Turbo Pascal, включая последнюю версию 7, включают модуль CRT, который использовался многими полноэкранными текстовыми приложениями на CRT . В разделе инициализации этого устройства содержится код для определения скорости процессора и калибровки контуров задержки. Этот код дает сбой на процессорах с частотой выше 200 МГц и немедленно прерывается с сообщением «Ошибка выполнения 200». [ 27 ] (код ошибки 200 не имел никакого отношения к частоте процессора 200 МГц). Это вызвано тем, что цикл выполняется для подсчета количества повторений, которые он может повторить за фиксированное время, измеряемое часами реального времени . Когда разрабатывался Turbo Pascal, он работал на машинах с процессорами, работающими на частоте от 2,5 до 8 МГц, и мало внимания уделялось возможности значительно более высоких скоростей, поэтому примерно с 200 МГц можно выполнить достаточно итераций, чтобы переполнить 16-битный счетчик. [ 28 ] Патч был выпущен , когда машины стали слишком быстрыми для исходного метода, но потерпел неудачу, поскольку скорость процессора еще больше возросла, и был заменен другими.
Программы, подверженные этой ошибке, можно перекомпилировать из исходного кода с исправлением компилятора для устранения ошибки (с использованием TURBO.TPL, скомпилированного с исправленным модулем CRT), или, если исходный код недоступен, исполняемые файлы можно исправить с помощью инструмента с именем TPPATCH или эквивалент, [ 29 ] [ 30 ] или загрузив резидентную программу завершения и пребывания перед запуском неисправной программы. [ 31 ]
Также есть патчи к компилятору TP7, [ 32 ] таким образом, если исходный код Pascal доступен, новый код компиляции будет работать без необходимости исправления скомпилированного кода. Если исходный код доступен, портирование на библиотеки без зависимости от тактовой частоты процессора также является решением. [ 33 ]
Арифметика с плавающей запятой
[ редактировать ]Существовало несколько типов с плавающей запятой , в том числе single
(4-байтовое представление [IEEE 754]) double
(8-байтовое представление IEEE 754), extended
(10-байтовое представление IEEE 754, используемое в основном внутри числовых сопроцессоров ) и Real
(6-байтовое представление).
В первые дни, Real
был самым популярным. Большинство компьютеров того времени не имели сопроцессора с плавающей запятой , поэтому всю арифметику с плавающей запятой приходилось выполнять программно. Собственные алгоритмы Borland с плавающей запятой на Real
были быстрее, чем при использовании других типов, хотя его библиотека также эмулировала другие типы в программном обеспечении.
Версии
[ редактировать ]Версии CP/M и DOS
[ редактировать ]Версия 1
[ редактировать ]Версия 1, выпущенная 20 ноября 1983 года, представляла собой базовую систему «все в одном», работающую в памяти и создающую исполняемые файлы .COM для DOS и CP/M, а также эквивалентные исполняемые файлы .CMD для CP/M-86 (полностью отличающиеся от Пакетные файлы .CMD, которые позже использовались в 32-разрядной версии Microsoft Windows). Файлы исходного кода были ограничены 64 КБ для упрощения IDE, а файлы DOS .COM были ограничены 64 КБ каждый из кода, стека и глобальных (статических) переменных. Исходный код программы можно было расширить с помощью функции включения, если исходный код превышал ограничение памяти редактора.
Существовали разные версии Turbo Pascal для компьютеров под управлением DOS, CP/M или CP/M-86 с 64 КБ памяти и хотя бы одним дисководом. Версия CP/M могла работать на многих машинах CP/M того времени с процессорами Z80 или на Apple II с картой Z80. Версии DOS и CP/M-86 работали на многих машинах 8086 и 8088 , которые стали доступны, включая IBM PC. Установщик, листинг и компилятор с IDE, а также исходный код простой программы для работы с электронными таблицами под названием MicroCalc, написанной Филиппом Каном в качестве демонстрации, уместились бы на одной дискете. Копия диска без MicroCalc вмещала бы исходный код и скомпилированный исполняемый файл программы разумного размера — поскольку в то время пользователи обычно имели только один дисковод для гибких дисков в качестве запоминающего устройства , было очень удобно иметь возможность разместить и компилятор, и программа записываются на одном диске, что позволяет избежать бесконечной замены дисков.
Архитектура машины , различных машин под управлением MS-DOS дополнительно ограничивала максимальную пользовательскую память до уровня менее 1 МБ (например, аппаратно совместимые с IBM PC, были ограничены 640 КБ).
Turbo Pascal IDE была очень продвинутой для своего времени. Он мог работать хорошо и очень быстро компилироваться с объемом оперативной памяти обычного домашнего компьютера. IDE была простой и интуитивно понятной в использовании и имела хорошо организованную систему меню. Ранние версии редактора использовали WordStar ключевые функции де-факто , которые в то время были стандартом . Более поздние версии IDE, предназначенные для ПК с большим дисковым пространством и памятью, могли отображать определения ключевых слов языка, наведя курсор на ключевое слово и нажав клавишу F1 (обычно используемую для отображения справки). Многие определения включали примеры кода.
В дополнение к стандартным исполняемым программам компилятор мог генерировать резидентные программы (TSR), небольшие утилиты, которые оставались в памяти и позволяли компьютеру выполнять другие задачи — одновременный запуск нескольких программ, многозадачность иначе не существовали. доступный. Borland выпустила небольшой пакет приложений под названием Sidekick , который представлял собой TSR, позволяющий пользователю вести дневник, заметки и т. д.
Версия 2
[ редактировать ]Версия 2, выпущенная несколькими месяцами позже, 17 апреля 1984 года, представляла собой постепенное улучшение оригинального Turbo Pascal до такой степени, что справочное руководство поначалу было идентично версии 1, вплоть до того, что на некоторых из них в качестве даты авторских прав был указан 1983 год. образец вывода компилятора, но имел отдельное руководство «Дополнение к справочному руководству: версия 2.0 и дополнение 8087» с отдельной нумерацией страниц. [ 34 ] Дополнения включали систему наложения , в которой отдельные процедуры наложения автоматически переносились с диска в зарезервированное пространство в памяти. Эта память была частью 64 КБ ОЗУ, используемой кодом программы, и автоматически имела размер самой большой процедуры наложения. [ 34 ] Процедуры наложения сами могут включать в себя разделы наложения, но если не использовался RAM-диск, результирующая замена диска может быть медленной. В версии 2.0 также добавлена процедура Dispose для управления кучей , позволяющая освобождать отдельные динамические переменные в качестве альтернативы более примитивной системе «Mark/Release» и повышенная совместимость с командами WordStar, а также использование цифровой клавиатуры на IBM PC и совместимых устройствах. . [ 34 ] Такие ПК также имели новое текстовое окно и команды графического режима CGA, а также возможность использовать динамик ПК для воспроизведения звуков. Наконец, машины DOS и CP/M-86 с математическим сопроцессором 8087 (или более поздним совместимым) имели альтернативный компилятор TURBO-87, который можно было приобрести. [ 34 ] типы данных 8087 Он поддерживал длинные действительные с диапазоном точности от 1,67E-307 до 1,67E+308 и до 14 значащих цифр, но с гораздо большей скоростью обработки. В руководстве отмечается, что, хотя исходный код реальных типов данных программного обеспечения Turbo Pascal предлагал диапазон от 1E-63 до 1E+63 до 11 значащих цифр, они были несовместимы на двоичном уровне: помимо того, что программное обеспечение имело гораздо больший диапазон, Реалы занимали в памяти шесть байт, а 8087 — восемь.
на базе Z80 Как и версия 1, версия 2 для CP/M-80 работала только на машинах CP/M . [ 35 ]
Версия 3
[ редактировать ]Версия 3 была выпущена 17 сентября 1986 года. [ 4 ] Turbo Pascal 3 поддерживал графику черепах . [ 36 ] В дополнение к программным действительным числам по умолчанию и версии компилятора 8087, Borland также предлагала версию с двоично-десятичным кодом (BCD) (TURBOBCD), которая предлагала тот же числовой диапазон, что и действительные типы данных, но до 18 значащих цифр. [ 4 ]
ДВЕ версии
[ редактировать ]Версия 4
[ редактировать ]Выпущен 20 ноября 1987 г. [ 37 ] Версия 4 была полностью переписана: в ней сильно изменился внешний вид и внутренние операции. Компилятор генерировал исполняемые файлы в формате .EXE под DOS, а не более простые, но более ограниченные исполняемые файлы .COM. Устаревшие к тому времени версии операционных систем CP/M и CP/M-86 были исключены при переписывании Turbo Pascal. В версии 4 представлены модули и полноэкранный текстовый пользовательский интерфейс с раскрывающимися меню; более ранние версии имели экран текстового меню и отдельный полноэкранный редактор. ( Microsoft Windows На момент выпуска первой версии все еще была очень экспериментальной, и даже мыши были редкостью.) Для Turbo Pascal V4 был доступен дополнительный пакет Turbo Pascal Graphix Toolbox. [ 38 ]
Версия 5.0
[ редактировать ]Цветные дисплеи заменили монохромные; Turbo Pascal версии 5.0, выпущенная 24 августа 1988 г. [ 37 ] в качестве цвета фона редактора по умолчанию введен синий цвет, который использовался компиляторами DOS компании Borland до конца этой линейки продуктов в середине 1990-х годов. Также добавлена поддержка отладчика для точек останова и наблюдения. Более поздние версии выпускались в двух пакетах с одним и тем же номером версии: менее дорогой пакет «Turbo» и пакет «Borland» с расширенными возможностями и большим количеством дополнений.
Версия 5.5
[ редактировать ]Эта версия, выпущенная 2 мая 1989 г., [ 37 ] представил функции объектно-ориентированного программирования для языка Паскаль, включая концепцию классов, статических и динамических объектов, конструкторов и деструкторов, а также наследование, которые стали основой для Object Pascal, найденного в Borland Delphi. В IDE используется синяя цветовая схема по умолчанию, которая также будет использоваться в более поздних продуктах Borland Turbo. Другие изменения в IDE включают добавление контекстной справки с описанием всех встроенных функций и возможность копирования фрагментов кода из справки в окно редактирования. [ 39 ]
Версия 6.0
[ редактировать ]Версия 6 была выпущена 23 октября 1990 года. [ 37 ] Изменения по сравнению с версией 5.5 включают: добавление встроенной сборки, добавление библиотеки Turbo Vision , поддержку мыши, буфер обмена для манипуляций с текстом, интерфейс с несколькими документами , поддерживающий до девяти окон редактирования. [ 40 ]
Версия 7.0
[ редактировать ]Версия 7 была выпущена 27 октября 1992 года. [ 37 ] Изменения по сравнению с версией 6.0 включают поддержку создания исполняемых файлов DOS и Windows, а также библиотек Windows DLL, а также подсветку синтаксиса. [ 41 ]
Турбо Паскаль для Windows
[ редактировать ]Были выпущены две версии под названием «Turbo Pascal for Windows» (TPW) для Windows 3.x : TPW 1.0, основанная на Turbo Pascal 6, но выпущенная примерно 2 года спустя, и 1.5, выпущенная после Turbo Pascal 7; на смену им пришел Borland Pascal 7, который имел поддержку Windows. Компилятор Windows в Pascal 7 назывался Borland Pascal for Windows .
Обе версии создавали программы, совместимые с Windows, и имели IDE на базе Windows, в отличие от IDE на базе DOS в Turbo Pascal. Команды IDE и редактора соответствовали рекомендациям пользовательского интерфейса Microsoft Windows, а не классическому пользовательскому интерфейсу TP. Для поддержки программ Windows требовалась Object Windows Library (OWL), аналогичная, но не идентичная библиотеке первого выпуска Borland C++ , и радикально отличающаяся от более ранней DOS Turbo Vision среды . Turbo Pascal для платформы Windows был заменен Delphi ; Компилятор Delphi может создавать консольные программы и приложения с графическим пользовательским интерфейсом (GUI), поэтому использование Turbo и Borland Pascal стало ненужным.
Турбо Паскаль для Macintosh
[ редактировать ]Borland выпустила Turbo Pascal для Macintosh в 1986 году. [ 42 ] [ 43 ] Как и версии с 1 по 3 для других операционных систем, она была написана на компактном языке ассемблера и имела очень мощную IDE, но не имела хорошего отладчика. Borland не очень хорошо поддерживала этот продукт, хотя и выпустила версию 1.1, исправленную для работы на 32-битном Macintosh II . Вскоре после этого поддержка Macintosh была прекращена. [ нужна ссылка ]
Бесплатные релизы
[ редактировать ]Borland выпустила несколько версий Turbo Pascal как бесплатное ПО после того, как они стали «антикварным программным обеспечением». [ 44 ] с версией 1.0 для DOS 1 февраля 2000 г., 3.02 от 10 февраля 2000 г., 5.5 от 21 февраля 2002 г., французской версией Turbo Pascal 7.01 в 2000 году. [ 45 ] Большая часть загрузок по-прежнему доступна на веб-сайте-преемнике Embarcadero Technologies . [ 3 ] [ 4 ] [ 5 ]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Гаич, Зарко (17 марта 2017 г.). «История Delphi: от Паскаля до Embarcadero Delphi XE 2» . МысльКо . Точка. Архивировано из оригинала 7 июля 2011 г. Проверено 18 февраля 2021 г.
- ^ Перейти обратно: а б «Турбо Паскаль версии 1.0 — даты выпуска Турбо Паскаля» . Архивировано из оригинала 24 апреля 2017 г. Проверено 9 сентября 2020 г.
- ^ Перейти обратно: а б с Интерсимоне, Дэвид (1 февраля 2000 г.). «Антикварное программное обеспечение: Turbo Pascal v1.0» . Эмбаркадеро Технологии. Архивировано из оригинала 21 декабря 2010 г. Проверено 9 ноября 2010 г.
- ^ Перейти обратно: а б с д Интерсимоне, Дэвид (10 февраля 2000 г.). «Антикварное программное обеспечение: Turbo Pascal v3.02» . Эмбаркадеро Технологии. Архивировано из оригинала 24 ноября 2010 г. Проверено 9 ноября 2010 г.
- ^ Перейти обратно: а б с Интерсимоне, Дэвид (21 февраля 2002 г.). «Антикварное программное обеспечение: Turbo Pascal v5.5» . Эмбаркадеро Технологии. Архивировано из оригинала 24 ноября 2010 г. Проверено 9 ноября 2010 г.
- ^ «Микро Рог изобилия (декабрь 1984 г.)» . Декабрь 1984 года.
- ^ Чепмен, Меррилл Р. (2006). В поисках глупости: более 20 лет катастроф высокотехнологичного маркетинга . Спрингер-Верлаг. п. 118. ИСБН 978-1-59059-721-7 . Архивировано из оригинала 23 июня 2016 г. Проверено 13 декабря 2015 г.
Borland с большим успехом дебютировал в отрасли с выпуском Turbo Pascal в ноябре 1983 года. Turbo Pascal был портом для DOS и CP/M пакета COMPAS Pascal Андерса Хейлсберга, и он был выпущен Borland по цене, которая казалась ошеломляющей. на тот момент: 49,95 долларов, что составляло примерно одну десятую цены сопоставимых продуктов.
- ^ «Серьезная лицензия» . groups.google.com .
- ^ Перейти обратно: а б Вебстер, Брюс Ф. (август 1985 г.). «Приветствия и агитации» . Байт . п. 355 . Проверено 27 октября 2013 г.
- ^ Вебстер, Брюс (февраль 1986 г.). «Инструмент программирования и Atari ST» . Байт . п. 331 . Проверено 9 мая 2015 г.
- ^ Пурнель, Джерри (февраль 1984 г.). «Chaos Manor получает долгожданный IBM PC» . Байт . п. 113 . Проверено 8 февраля 2015 г.
- ^ Пурнель, Джерри (июль 1984 г.). «Ярмарка Западного побережья» . Байт . п. 136. Архивировано из оригинала 28 января 2012 г. Проверено 8 ноября 2011 г.
- ^ Уодлоу, Том; Пирс, Эл; Бриджер, Марк (июль 1984 г.). «Турбо Паскаль» . Байт (обзор). стр. 263–278 . Проверено 23 октября 2013 г.
- ^ Пурнель, Джерри (август 1985 г.). «Компьютерная ярмарка Западного побережья» . Байт . стр. 293–326 . Проверено 5 ноября 2023 г.
- ^ Бриджер, Марк (февраль 1986 г.). «Турбо Паскаль 3.0» . Байт . п. 281 . Проверено 9 мая 2015 г.
- ^ Шаммас, Намир Клемент (декабрь 1986 г.). «Паскаль для IBM PC» . Байт . п. 265 . Проверено 9 мая 2015 г.
- ^ Бэнкс, Уолтер (февраль 1988 г.). «Турбо Паскаль 4.0» . Байт . стр. 153–156 . Проверено 1 октября 2023 г.
- ^ Дантеманн, Джефф (13 ноября 1984 г.). «Усиленный Турбо Паскаль» . Журнал ПК . п. 276 . Проверено 25 октября 2013 г.
- ^ «Награды Байта» . Байт . Январь 1989 г. с. 327.
- ^ Пурнель, Джерри (январь 1989 г.). «К звездам» . Байт . п. 109.
- ^ Уоллес, Джеймс; Эриксон, Джим (1992). «Болезни роста» . Жесткий диск: Билл Гейтс и создание империи Microsoft . Джон Уайли и сыновья . п. 277 . ISBN 0-471-56886-4 .
- ^ «Глава 14 — Объединение Паскаля с Ассемблером» . Архивировано из оригинала 20 октября 2016 г. Проверено 19 октября 2016 г.
- ^ «InfoWorld, 21 марта 1988 г.: Анонс Turbopower T-Debug 4» . 21 марта 1988 г. Архивировано из оригинала 25 апреля 2016 г. Проверено 13 декабря 2015 г.
- ^ «Руководство по Turbo Profiler 1.0» (PDF) . Архивировано из оригинала (PDF) 2 апреля 2012 г. Проверено 3 ноября 2011 г.
- ^ «Книга Марко Канту по Delphi Power: отладка программ Delphi» (PDF) . Архивировано из оригинала (PDF) 31 марта 2012 г. Проверено 31 октября 2011 г.
- ^ «3.3.2. Связывание с внешне скомпилированными и ассемблированными подпрограммами – Реконструкция руководства пользователя UCSD Pascal System II.0 – Версия I.5, сентябрь 1978 г.» . Архивировано из оригинала 3 сентября 2007 г.
- ^ «Поддержка разработчиков Borland Pascal» . Архивировано из оригинала 23 октября 2010 г. Проверено 25 апреля 2011 г.
- ^ «Ошибка запуска Паскаля версии 7 компании Borland: ошибка 200 (деление на ноль)» . Архивировано из оригинала 7 сентября 2015 г. Проверено 16 ноября 2015 г.
{{cite web}}
: CS1 maint: unfit URL ( ссылка ) Веб-страница, обсуждающая причину ошибки и различные способы ее решения. - ^ «PatchCRT – исправляет ошибки времени выполнения в некоторых приложениях» . kennedysoftware.ie. 2003. Архивировано из оригинала 21 июля 2011 г. Проверено 28 сентября 2010 г.
- ^ «Не снова: ошибка выполнения 200» . 08 апреля 2000 г.
- ^ «Как исправить ошибку времени выполнения 200» . pcmicro.com. 2006 год . Проверено 28 сентября 2010 г.
- ^ «Ошибка выполнения 200» (на немецком языке). blume-programm.de. 13 марта 2003 г. Архивировано из оригинала 17 ноября 2015 г. Проверено 16 ноября 2015 г.
- ^ Ченг, Аллен (1997). «СуперЗадержка v1.1a» . blume-programm.de . Проверено 28 сентября 2010 г. [ постоянная мертвая ссылка ]
- ^ Перейти обратно: а б с д Турбо Паскаль версия 2.0 (PDF) .
- ^ «Турбо Паскаль v2.0» (PDF) . Компьютерный язык . № 1. 1984. С. 78–79.
- ^ Халл, Натан. «Использование Turtle Graphics в Turbo Pascal» .
- ^ Перейти обратно: а б с д и «Turbo Pascal версии 1.0 — Даты выпуска Turbo Pascal» . Эмбаркадеро Технологии . 17 ноября 2008 г. Архивировано из оригинала 24 февраля 2020 г. Проверено 13 апреля 2021 г.
- ^ Руководство по Borland Graphics Toolbox (PDF) .
- ^ «Турбо Паскаль 5.5: версия языка программирования Паскаль» . progopedia.com .
- ^ «Турбо Паскаль 6.0: версия языка программирования Паскаль» . progopedia.com .
- ^ «Турбо Паскаль 7.0: версия языка программирования Паскаль» . progopedia.com .
- ^ «Borland Turbo Pascal 1.x (Mac)» .
- ^ Коэн, Денис (апрель 1987 г.). «Прибытие Турбо Паскаля» . Макмир . Том. 4, нет. 4. С. 162–163.
- ^ «Антикварное программное обеспечение: Turbo Pascal v5.5» . CDN » Музей . Корпорация программного обеспечения Борланд. Архивировано из оригинала 3 февраля 2004 г. Проверено 1 апреля 2013 г.
- ^ «Téléchargements — Бесплатные материалы: компиляторы Delphi, Pascal и C/C++» . Корпорация программного обеспечения Борланд. Архивировано из оригинала 24 июня 2004 г.
Примечание для пользователей из других стран: этот бесплатный Turbo Pascal 7 доступен только на французском языке. Версия Turbo Pascal 7 для США пока недоступна для бесплатной загрузки. Для версии для США загрузите Turbo Pascal 5.5 US ниже. Спасибо.
Внешние ссылки
[ редактировать ]- Страница Borland International, Inc. Turbo Pascal: DOS 7.0 , Windows 1.5
- Страница Inspire Corporation Turbo Pascal: DOS 7.0 , Windows 1.5
- Страница Borland Software Corporation Turbo Pascal: DOS 7.0
- Генерация кода Turbo Pascal 3 , описание компилятора Turbo Pascal 3.0
- Внутреннее устройство компилятора Turbo Pascal. Архивировано 27 апреля 2011 г. на Wayback Machine , полный исходный код компилятора, совместимого с Turbo Pascal 7.0.
- Версии Borland/Inprise Pascal
- программное обеспечение 1983 года
- Программное обеспечение Борланд
- Программное обеспечение CP/M
- ДВА программного обеспечения
- Классическое программное обеспечение Mac OS
- Интегрированные среды разработки
- Объектно-ориентированные языки программирования
- Компиляторы Паскаля (языка программирования)
- Программное обеспечение на языке ассемблера