Перейти до вмісту

Free Pascal

Матеріал з Вікіпедії — вільної енциклопедії.
Free Pascal Compiler
Free Pascal через командний рядок у cygwin
ТипКомпілятор
РозробникФлоріан Клемпфль та волонтери
Стабільний випуск3.2.2 (20 травня 2021; 5 років тому (2021-05-20))
Операційна системаБагатоплатформенний
Мова програмуванняObject Pascal і Асемблер
ЛіцензіяGPL
Репозиторійgitlab.com/freepascal.org
Вебсайтwww.freepascal.org
Free Pascal IDE

Free Pascal (Повна назва Free Pascal Compiler, FPC) — це компілятор мови програмування Паскаль з відкритим початковим кодом.

Він сумісний з Borland Pascal 7 і Object Pascal, але при цьому має ряд додаткових можливостей, наприклад, підтримує перевантаження операторів. FPC кросплатформенний інструмент, що підтримує величезну кількість платформ. Серед них AmigaOS, DOS, Linux, *BSD, OS/2, MacOS X і Win32.

Підтримувані платформи

[ред. | ред. код]
Архітектура ОС/Пристрій Версія 2.4.2 Версія 2.4.0 Версія 2.2.4 Версія 2.0.x Версія 1.0.x
i386 DOS (GO32v2 extender)ТакТакТакТакТак
FreeBSD (6.x and 7.x)ТакТакТакНевідомоНевідомо
LinuxТакТакТакНевідомоНевідомо
Mac OS XТакТакТакНевідомоНі
OS/2ТакТакТакТакТак
WindowsТакТакТакТакТак
Windows CEТакТакНіНіНі
HaikuТакТакНіНіНі
Novell NetWareНевідомоНевідомоНевідомоТакНі
x86-64 FreeBSDТакНіНіНіНі
LinuxТакТакТакНевідомоНевідомо
Mac OS XТакТакНіНіНі
WindowsТакТакНіНіНі
ARM iPhone OSТакТакНіНіНі
Game Boy Advance (GBA)ТакТакНіНіНі
Nintendo DSТакТакНіНіНі
LinuxТакТакТакНевідомоНевідомо
Windows CEТакТакТакНевідомоНевідомо
PowerPC LinuxТакТакТакНевідомоНевідомо
Mac OS XТакТакТакНевідомоНевідомо
Mac OS ClassicНевідомоНевідомоНевідомоТакНевідомо
PowerPC 64-bit LinuxТакТакТакНевідомоНевідомо
Mac OS XТакТакНіНіНі
SPARC LinuxТакТакТакНевідомоНевідомо

Бібліотеки та оболонки

[ред. | ред. код]

У рамках проєкту також розробляється Lazarus — вільний аналог середовища розробки Delphi і Lazarus Components Library (LCL) — вільна бібліотека віджетів, аналогічна VCL в Delphi.

Існують і альтернативні проєкти візуального програмування на базі Free Pascal, найзрілішим з яких є MSEide, що використовує власну, несумісну з VCL бібліотеку компонентів MSEgui.

Інша альтернатива Lazarus fpGUI, проста бібліотека віджетів, що не містить додаткових бібліотек, наприклад, для роботи з базами даних, XML тощо. До її складу включено візуальний редактор форм, що генерує початковий код створення форми на паскалі.

Крім того, для створення Windows-застосунків можна використовувати невізуальну бібліотеку KOL.

Особливості

[ред. | ред. код]
  • Підтримка перевантаження арифметичних операторів (+, -, *, **, /, div, mod), операторів порівняння (<, >, =, >=, <=) та оператора присвоювання :=.
  • Підтримка операторів присвоювання з виконанням арифметичної операції в стилі Сі (+=, -=, *=, /=).
  • Наявність власної системи збірки (fpcmake) та генератора документації (fpcdoc).

У компіляторі для архітектури x86 вбудований асемблер за замовчуванням використовує синтаксис AT&T. Для активування синтаксису Intel існує параметр командного рядка, а також спеціальна директива.

Історія

[ред. | ред. код]
  • 1993 рік — початок роботи над проєктом.
  • 1995 рік — компілятор успішно компілює сам себе.
  • 1996 рік — проєкт опублікований в інтернеті під ліцензією GNU GPL.
  • 12 липня 2000 року — вихід версії 1.0.
  • 2003 рік — вихід версії 1.0.10, завершення роботи над гілкою 1.0.x.
  • 15 травня 2005 року — вихід версії 2.0.
  • 10 вересня 2007 року — вихід версії 2.2.
  • 30 грудня 2009 року — вихід версії 2.4.
  • 12 листопада 2010 — вихід версії 2.4.2.
  • 12 листопада 2010 — вихід версії 2.4.2.
  • 25 листопада 2015 — вихід версії 3.0.0.
  • 28 листопада 2017 — вихід версії 3.0.4, підтримка архітектури ARM64
  • 19 червня 2020 — версія 3.2.0: повноцінна підтримка ARM64; підтримка архітектур Linux/ppc64le, Android/x86_64 та i8086-win16[1]

Ліцензія

[ред. | ред. код]

Компілятор поширюється на умовах GNU General Public License, а значна частина бібліотек, у тому числі ядро RTL — на умовах м'якшої GNU Lesser General Public License.

Джерела

[ред. | ред. код]
  1. FPC New Features 3.2.0 (англ.). Архів оригіналу за 9 квітня 2022. Процитовано 11 квітня 2022.

Посилання

[ред. | ред. код]