Free Pascal

Матеріал з Вікіпедії — вільної енциклопедії.
(Перенаправлено з FPC)
Перейти до навігації Перейти до пошуку
Free Pascal Compiler
Free Pascal через командний рядок у cygwin
ТипКомпілятор
РозробникФлоріан Клемпфль та волонтери
Стабільний випуск3.2.2 (20 травня 2021; 3 роки тому (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.

Посилання

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