Free Pascal

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

Посилання

  • Сторінка проєкту [Архівовано 29 квітня 2022 у Wayback Machine.]


Мова програмування Це незавершена стаття про мови програмування.
Ви можете допомогти проєкту, виправивши або дописавши її.
  • п
  • о
  • р
Низькорівневі
Високорівневі
Загального
призначення
Серверні
Запитів до баз
даних[суперечливо 1]
Розмітки та векторної
графіки[суперечливо 1]
Синхронні[en]
  • Lustre[en]
Символьних та
чисельних обчислень
Квантових обчислень
Логічні
  • Mercury[en]
  • Prolog
Академічні
Езотеричні
  1. а б Немає загальноприйнятого рішення, чи вважати усі ці мови саме мовами програмування
  • п
  • о
  • р
Загальне
Історія
ОС на базі ВПЗ
BSD · Apple Darwin · FreeDOS · FreeBSD · OpenBSD · FreeNAS · GNU · Haiku · Hurd · Inferno · Linux · Mach · MINIX · OpenSolaris · Plan 9 · ReactOS
Розробка ВПЗ[en]
Eclipse · FreeBASIC · Free Pascal · GCC · Java · libJIT[ru] · LLVM · Lua · Open64 · Perl · PHP · Python · ROSE[en] · Ruby · Tcl
Менеджери
вікон XWS
Blackbox Compiz EDE Enlightenment Fluxbox GNOME JWM IceWM KDE Openbox ROX[en] Window Maker[en] Xfce
Організації
Фонд вільного ПЗ (FSF) (європейський[en] індійський[en] латиноамериканський[en]) • Apache Software Foundation · Blender Foundation[en] · Eclipse Foundation · freedesktop.org · GNOME Foundation · Проєкт GNU · Google Code · Linux Foundation · Mozilla Foundation · Open Source Initiative · SourceForge · The Document Foundation · Xiph.Org · XMPP Standards Foundation[en] · X.Org Foundation
Ліцензії
Проблеми
Двійковий блоб · Технічні засоби захисту авторських прав · Вільні та відкриті графічні драйвери[en] · Ліцензійна проліферація · Iceweasel · Безпека відкритого ПЗ[en] · Власницьке програмне забезпечення · Конфлікт SCO—Linux · Програмні патенти · Тивоїзація · Trusted Computing · Апаратне обмеження[es] · Вірусна ліцензія
Інше
Визначення вільного ПЗ · Визначення Open Source · Альтернативні назви[en] · Рух · Вільне та відкрите ПЗ Microsoft Open Specification Promise[en] · Порівняння відкритих та закритих кодів[en] · Revolution OS · Собор і базар