В настоящее время в рамках проекта также разрабатывается
Lazarus
— свободный аналог
среды разработки
Delphi и Lazarus Components Library (LCL) — свободная библиотека
виджетов
, аналогичная
VCL
в Delphi.
Существуют и альтернативные проекты визуального программирования на базе Free Pascal, наиболее зрелым из которых является
MSEide
, использующий собственную, несовместимую с VCL библиотеку компонентов MSEgui.
Альтернатива Lazarus’у
fpGUI
— простая библиотека виджетов, не содержащая дополнительных библиотек вроде работы с
БД
,
XML
и тому подобным. В её состав включён визуальный редактор форм, генерирующий исходный код создания формы на Паскале.
Кроме того, в настоящее время для создания Windows-приложений можно использовать известную невизуальную библиотеку
KOL
.
Режимы совместимости
Важной особенностью данного компилятора, в отличие, например, от
GNU Pascal
, является ориентация на распространённые коммерческие диалекты языка:
Object Pascal
и
Delphi
.
Free Pascal поддерживает компиляцию в нескольких режимах, обеспечивающих совместимость с различными диалектами и реализациями языка.
Режим
— собственный диалект: соответствует предыдущему, расширенному дополнительными возможностями, такими как, например,
перегрузка операций
.
Режим
— совмещает объектно-ориентированные возможности Delphi и собственные расширения языка.
Режим
Delphi
— данный режим предоставлен для совместимости с компилятором
Delphi
от компании Embarcadero с целью упрощения портирования существующих исходных файлов на Free Pascal. Для этого вам необходимо включить этот режим директивой
${mode Delphi}
в исходном файле или с помощью опции
-Mdelphi
в командной строке компилятора.
Режим
— Этот режим обеспечивает максимальную совместимость с
компиляторами
Turbo Pascal
/
, чтобы упростить перенос существующего кода на FPC. Он использует возможности, которые не рассматриваются в качестве рекомендуемых, несколько изменяя правила синтаксиса. В случае необходимости он вносит изменения в стандартный режим ассемблера $ASMMODE INTEL и т.п. Для этого вам необходимо включить этот режим директивой
${mode TP}
в исходном файле или с помощью опции
-Mtp
в командной строке компилятора.
Режим
— режим совместимости с
.
Режим
Режим
Режим
— был режимом компилятора, с помощью которого Free Pascal пытался компилировать только допустимый код
GNU Pascal
. Данный режим удален из компилятора Free Pascal начиная с версии 2.2.
Особенности
Поддержка перегрузки арифметических операторов (
+
,
-
,
*
,
/
,
div
,
mod
,
**
), операторов сравнения (
<
,
>
,
=
,
>=
,
<=
), логических операторов (
and
,
or
,
xor
,
not
,
shl
,
shr
), операторов над множествами (
><
,
in
) и оператора присваивания
:=
.
Поддержка операторов присваивания с выполнением арифметической операции в стиле
Си
(
+=
,
-=
,
*=
,
/=
).
Наличие собственной системы сборки (fpcmake) и генератора документации (fpcdoc).
Встроенный ассемблер по умолчанию использует синтаксис
AT&T
, синтаксис
Intel
включается отдельной директивой.
Краткая история
1993 год — начало работы над проектом.
1995 год — компилятор успешно компилирует сам себя.
1996 год — проект опубликован в интернете под лицензией GNU GPL.
12 июля 2000 года — выход версии 1.0.
2003 год — выход версии 1.0.10, завершение работы над ветвью 1.0.x.