Бесплатный Паскаль
Разработчик(и) | Флориан Клемпфл и волонтеры |
---|---|
Первоначальный выпуск | 1997 год |
Стабильная версия | 3.2.2 / 20 мая 2021 г |
Предварительный выпуск | 3.3.1 |
Репозиторий | |
Написано в | Объектный Паскаль |
Операционная система | Кроссплатформенный , встроенный |
Тип | Компилятор , встроенная операционная система |
Лицензия | Стандартная общественная лицензия GNU на исполняемые файлы компилятора и утилит. GNU Lesser General Public License с исключением статического связывания для среды выполнения, пакетов, компонентов и других библиотек, которые становятся частью исполняемых файлов, созданных с помощью компилятора. |
Веб-сайт | www |
Free Pascal Compiler ( FPC ) — это компилятор тесно связанных диалектов языка программирования Pascal и Object Pascal . Это бесплатное программное обеспечение, выпущенное под лицензией GNU General Public License , с исключениями , которые позволяют статическое связывание с его библиотеками времени выполнения и пакетами для любых целей в сочетании с любой другой лицензией на программное обеспечение.
Он поддерживает свой собственный диалект Object Pascal, а также в определенной степени диалекты нескольких других компиляторов семейства Pascal, включая диалекты Borland Pascal (названного «Turbo Pascal» до версии 6 1990 года), Borland (позже Embarcadero) Delphi и некоторые исторические компиляторы Macintosh . Диалект выбирается индивидуально для каждого модуля (модуля) , и в одной программе можно использовать более одного диалекта.
Он следует философии «запись один раз, компиляция где угодно » и доступен для многих архитектур процессоров и операционных систем (см. «Цели »). Он поддерживает встроенный язык ассемблера и включает внутренний ассемблер, способный анализировать несколько диалектов, таких как стиль AT&T и Intel.
Существуют отдельные проекты, облегчающие разработку кроссплатформенных приложений с графическим пользовательским интерфейсом (GUI), наиболее известным из которых является Lazarus интегрированная среда разработки (IDE) .
Поддерживаемые диалекты
[ редактировать ]Первоначально Free Pascal принял де-факто стандартный диалект программистов Pascal, Borland Pascal, но позже принял Object Pascal Delphi. Начиная с версии 2.0, совместимость с Delphi постоянно реализуется или улучшается.
В проекте есть концепция режима компиляции , и разработчики ясно дали понять, что они будут включать рабочие исправления для стандартизированных диалектов Американского национального института стандартов (ANSI) и Международной организации по стандартизации (ISO) для создания режима, соответствующего стандартам.
Небольшие усилия были предприняты для поддержки некоторых синтаксисов Apple Pascal для упрощения взаимодействия с классической Mac OS и macOS . Диалект Apple реализует некоторые стандартные функции Pascal, которые отсутствуют в Turbo Pascal и Delphi.
2.2. Серия выпусков x не внесла существенных изменений в цели диалекта, выходящие за пределы примерно синтаксиса уровня Delphi 7, вместо этого стремясь к более тесной совместимости. Заметным исключением из этого правила было добавление поддержки дженериков в Free Pascal в версии 2.2.0, за несколько лет до того, как Delphi начала поддерживать их в любом качестве.
В 2011 году в ветку разработки было добавлено несколько функций, специфичных для Delphi 2006, а также начата работа над новыми функциями Delphi 2009 (в первую очередь добавлением UnicodeString
тип) был завершен. Ветка разработки также имеет расширение Objective-Pascal для интерфейса Objective-C ( Cocoa ).
Начиная с версии 2.7.1, в Free Pascal реализован базовый режим ISO Pascal, хотя многие вещи, такие как Get
и Put
процедуры, а концепция переменных файлового буфера для обработки файлов все еще отсутствовала.
Начиная с версии 3.0.0 режим ISO Pascal является достаточно полным. Ему удалось скомпилировать компилятор P5 ISO Pascal от Standardpascal.org без каких-либо изменений.
История
[ редактировать ]Ранние годы
[ редактировать ]Free Pascal был создан, когда Borland пояснила, что разработка Borland Pascal для DOS прекратится с версией 7 и будет заменена продуктом только для Windows , который позже стал Delphi.
Студент Флориан Пауль Клэмпфл начал разработку собственного компилятора, написанного на диалекте Turbo Pascal, и создал 32-битный код для расширителя DOS использовался и разрабатывался проектом DJ's GNU Programming Platform ( DJGPP GO32v1, который в то время ).
Первоначально компилятор представлял собой 16-битный исполняемый файл DOS, скомпилированный Turbo Pascal . Через два года компилятор смог скомпилироваться и стал 32-битным исполняемым файлом.
Расширение
[ редактировать ]Первоначальный 32-битный компилятор был опубликован в Интернете , и к проекту присоединились первые участники. Позже Linux Майкл ван Каннейт создал порт , за пять лет до того, как стал доступен компилятор Borland Kylix Pascal для Linux.
Порт DOS был адаптирован для использования в OS/2 с помощью Eberhard Mattes eXtender (EMX), что сделало OS/2 второй поддерживаемой целью компиляции. Как и Флориан Клэмпфл, первоначальный автор, Даниэль Мантионе также внес значительный вклад в то, чтобы это произошло, предоставив оригинальный порт библиотеки времени выполнения для OS/2 и EMX. Компилятор постепенно улучшался, и версия для DOS перешла на расширитель GO32v2. Кульминацией этого стал выпуск 0.99.5, который использовался гораздо более широко, чем предыдущие версии, и был последним выпуском, нацеленным только на соответствие Borland Pascal; в более поздних версиях добавлен режим совместимости с Delphi. Этот выпуск также был портирован на системы, использующие процессоры семейства Motorola 68000 (m68k).
В выпуске 0.99.8 была добавлена цель Win32 , и было положено начало включению некоторых функций Delphi. Началась стабилизация для небета -версии , и в июле 2000 года была выпущена версия 1.0. Версия 1.0. Серия x широко использовалась в бизнесе и образовании. Для версии 1.0. x , порт на процессор 68k был переделан, а компилятор создал стабильный код для нескольких 68k Unix-подобных и AmigaOS операционных систем.
Версия 2
[ редактировать ]Во время стабилизации того, что станет 1.0. x , а также при портировании на системы Motorola 68k стало ясно, что конструкция генератора кода во многих аспектах слишком ограничена. Основные проблемы заключались в том, что добавление процессоров означало переписывание генератора кода и что распределение регистров было основано на принципе всегда сохранения трех свободных регистров между строительными блоками, что было негибким и трудным в обслуживании.
По этим причинам 1.1. x Серия ответвилась от версии 1.0. x в декабре 1999 года. Поначалу изменения в основном сводились к чистке и переписыванию-переработке всех частей компилятора. Генератор кода и распределитель регистров также были переписаны. Была добавлена недостающая совместимость с Delphi.
Работа над версией 1.1.x продолжалась медленно, но неуклонно. В конце 2003 года стал доступен рабочий порт PowerPC , за ним последовал порт ARM летом 2004 года, порт SPARC осенью 2004 года и порт x86-64 -AMD64 в начале 2004 года, что сделало компилятор доступным для 64-битной платформы. .
В ноябре 2003 года вышла первая бета- версия версии 1.1. x ветка была упакована и имела номер 1.9.0. Вскоре за ними последовали версии 1.9.2 и 1.9.4; последний представил поддержку OS X. Работа продолжилась над версиями 1.9.6 (январь 2005 г.), 1.9.8 (конец февраля 2005 г.), 2.0.0 (май 2005 г.), 2.0.2 (декабрь 2005 г.) и 2.0.4 (август 2006 г.).
Версия 2.2.х
[ редактировать ]В 2006 году некоторые крупные изменения, запланированные на версию 2.2, такие как переписывание системы юнитов, еще не начались, и вместо этого было решено начать стабилизировать уже реализованные функции.
Некоторыми мотивами для этого изменения дорожной карты были потребности проекта интегрированной среды разработки Lazarus, в частности, внутреннего компоновщика, поддержка Win64 , Windows CE и OS X на x86 , а также связанных функций, таких как DWARF . После бета-версий 2.1.2 и 2.1.4 в сентябре 2007 г. была выпущена версия 2.2.0, за ней последовала версия 2.2.2 в августе 2008 г. и версия 2.2.4 в марте 2009 г.
2.2. В серии x значительно улучшена поддержка ActiveX и модели компонентных объектов (COM) интерфейса , а также связывания и внедрения объектов (OLE), хотя ошибки все еще обнаруживались. Делегирование взаимодействия с использованием implements
ключевое слово было частично реализовано, но не было завершено по состоянию на март 2011 г. [update]. [1] Также была улучшена библиотечная поддержка ActiveX.
Еще одной важной особенностью был внутренний компоновщик для Win32, Win64 и Windows CE, который значительно сокращал время компоновки и использование памяти, а также значительно ускорял цикл компиляции-компоновки-выполнения в Lazarus. Также была повышена эффективность интеллектуального связывания или устранения мертвого кода .
Незначительные новые функции включали улучшенную поддержку формата отладки DWARF (2/3) и такие оптимизации, как хвостовая рекурсия , исключение ненужных кадров стека (CSE) на основе регистров и оптимизация исключения общего подвыражения . Также стала доступна первая реализация поддержки универсального программирования (дженериков), но только экспериментально.
Версия 2.4.х
[ редактировать ]Серия выпусков 2.4.x имела менее четкий набор целей, чем предыдущие выпуски. Переписывание системы юнитов снова было отложено, а ветка, которая стала 2.4, была создана для сохранения рискованных коммитов из 2.2 для ее стабилизации. В основном эти рискованные коммиты были связаны с улучшениями новых платформ, Mac PowerPC 64, Mac x86-64, iPhone, а также множеством исправлений для архитектур ARM и x86-64 в целом, а также DWARF.
Другие улучшения компилятора включали оптимизацию всей программы (WPO) и девиртуализацию ARM двоичного интерфейса встроенных приложений , а также поддержку (EABI).
Позже, в цикле 2.2, была добавлена поддержка ресурсов, более подобная Delphi (основанная на специальных разделах в двоичном файле вместо констант Паскаля). Эта функция, остро необходимая Лазарусу, стала главной изюминкой ветки.
Другими более незначительными дополнениями были менеджер памяти , который улучшил кучи производительность менеджера в многопоточных средах, а также небольшие улучшения совместимости с Delphi, такие как OleVariant
и улучшения в интерфейса делегировании .
1 января 2010 г. был выпущен Free Pascal 2.4.0, а 13 ноября 2010 г. - выпуск 2.4.2 с исправлением ошибок и поддержкой for..in
петли, sealed
и abstract
занятия и другие изменения. [2]
Версия 2.6.х
[ редактировать ]В январе 2012 года был выпущен Free Pascal 2.6. Эта первая версия из серии выпусков 2.6 также поддерживала Objective Pascal для OS X и iOS и реализовала множество небольших улучшений и исправлений ошибок. В феврале 2013 года был выпущен FPC 2.6.2. он содержал выпуски NetBSD и OpenBSD Впервые с версии 1.0.10 , основанные на свежих портах. В марте 2014 года был выпущен последний выпуск серии 2.6, 2.6.4, включающий в себя в основном обновления базы данных (fcl-db).
Версия 3.0.х
[ редактировать ]Версия 3.0.0 была выпущена 25 ноября 2015 г. и стала первым крупным выпуском с 1 января 2012 г.Он представил много новых языковых функций. [3]
Версия 3.0.2 была выпущена 15 февраля 2017 г. и включает исправления ошибок и небольшие обновления компилятора.
Версия 3.0.4 вышла 28 ноября 2017 г.
Он включает в себя множество языковых улучшений по сравнению с предыдущими версиями, в том числе внутренний компоновщик для исполняемого и связываемого формата (ELF), Arm AARCH64 для iOS и Linux, обновленную платформу i8086, расширенные библиотеки и многое другое.
Версия 3.2.х
[ редактировать ]Следующий основной выпуск, версия 3.2.0, был опубликован 19 июня 2020 года. В нем представлено множество новых функций языка, включая общие процедуры, стандартные пространства имен, управляемые записи и расширенные функциональные возможности для динамических массивов, а также появление новых стандартных модулей. и поддержка дополнительных платформ. [4]
Версия 3.2.2 была выпущена 20 мая 2021 г. и поддерживает macOS на AArch64 и именование потоков. Кроме того, он включает исправления ошибок и небольшие обновления компилятора. [5]
Цели
[ редактировать ]Архитектура процессора | Операционная система, устройство | Версия 3.2.2 или 3.3.1 (магистраль) | Версия 3.0.0 - 3.2.0 | Версия 2.6.2 | Версия 2.6.0 | Версия 2.4.4 | Версия 2.4.2 | Версия 2.4.0 | Версия 2.2.4 | Версия 2.0. х | Версия 1.0. х |
---|---|---|---|---|---|---|---|---|---|---|---|
я386 | ДВА ( расширение GO32v2 ) | Да | Да | Да | Да | Да | Да | Да | Да | Да | Да |
FreeBSD | Да | Да | Да | Да | Да | Да | Да | Да | Да | Да | |
OpenBSD | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Да | |
NetBSD | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Да | |
Линукс | Да | Да | Да | Да | Да | Да | Да | Да | Да | Да | |
macOS | Да | Да | Да | Да | Да | Да | Да | Да | Нет | Нет | |
ОС/2 | Да | Да | Да | Да | Да | Да | Да | Да | Да | Да | |
Окна | Да | Да | Да | Да | Да | Да | Да | Да | Да | Да | |
Windows CE | Да | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | |
БеОС | Да | Да | Да | Да | Да | Да | Да | Да | Да | Да | |
Хайку | Да | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | |
NetWare | Да | Да | Да | Да | Да | Да | Да | Да | Да | Нет | |
Солярис | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | Да | |
iPhone сим-карта | Да | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | |
QNX Нейтрино | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Да | |
Андроид | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
ЖДАТЬ | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
х86-64 | FreeBSD | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | Нет |
OpenBSD | Да | Да | Да | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | |
NetBSD | Да | Да | Да | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | Unknown | |
Линукс | Да | Да | Да | Да | Да | Да | Да | Да | Unknown | Нет | |
macOS | Да | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | |
Окна | Да | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | |
iPhone сим-карта | Да | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | |
ЖДАТЬ | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | Нет | |
Стрекоза БСД | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | Нет | |
Солярис | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | Нет | |
Хайку | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
Андроид | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
РУКА | iOS | Да | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет |
Геймбой Прогресс | Да | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | |
Нинтендо ДС | Да | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | |
Линукс | Да | Да | Да | Да | Да | Да | Да | Да | Unknown | Нет | |
Windows CE | Да | Да | Да | Да | Да | Да | Да | Да | Unknown | Нет | |
Андроид | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
Встроенный | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
Встроенный Rasp-Pi | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
ЖДАТЬ | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
AArch64 | Линукс | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
iOS | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
Андроид | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
macOS | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
АВР | Встроенный | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
PowerPC | Линукс | Да | Да | Да | Да | Да | Да | Да | Да | Да | Нет |
macOS | Да | Да | Да | Да | Да | Да | Да | Да | Да | Нет | |
Классическая Mac OS | Да | Да | Да | Да | Да | Нет | Нет | Да | Да | Нет | |
АмигаОС 4 | Да | Да | Да | Да | Да | Unknown | Unknown | Unknown | Да | Нет | |
МорфОС | Да | Да | Да | Да | Да | Unknown | Unknown | Unknown | Да | Нет | |
ЭКС | Да | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | |
Вий | Да | Да | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | |
PowerPC 64-разрядная версия | Линукс | Да | Да | Да | Да | Да | Да | Да | Да | Нет | Нет |
macOS | Да | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | |
ЭКС | Да | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | |
СПАРК | Солярис | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | Нет |
NetBSD | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | Нет | |
Встроенный | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | Нет | |
Линукс | Да | Да | Да | Да | Да | Да | Нет | Нет | Нет | Нет | |
SPARC64 | Линукс | Да | Да | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет |
РИСК-V | Встроенный | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
RISC-V64 | Встроенный | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
виртуальная машина Java | Ява | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
Андроид | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
MIPS (BE и LE) | Линукс | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
Встроенный | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
8086 (16-бит) | ПРИНАДЛЕЖАЩИЙ | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
Win16 | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
Встроенный | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
м68к | Линукс | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Да |
NetBSD | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Да | |
АмигаОС | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Да | |
Условия использования Atari | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Да только ограниченный кросс-компилятор | |
Пальмовая ОС | Да | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Unknown | |
Z80 | Встроенный | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
ZX Спектр | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
MSX-DOS | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | |
Веб-сборка | Веб-браузеры | Да | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет | Нет |
Free Pascal также поддерживает генерацию байт-кода для виртуальной машины Java, начиная с версии 3.0.0, и ориентирован как на Java Oracle, так и на JVM Android от Google. [6] хотя синтаксис Object Pascal не поддерживается полностью. Free Pascal 3.0.0 также поддерживает платформы ARMHF, такие как Raspberry Pi , включая ARMV6-EABIHF, работающий на Raspbian. Работа над 64-битным ARM привела к поддержке iOS и в версии 3.0.0. Была добавлена собственная цель ARM Android, что положило конец ранее взломанной цели ARM Linux для создания собственных ARM-библиотек для Android. Это делает портирование приложений Lazarus на Android (с использованием пользовательского нарисованного интерфейса) [7] ) Полегче. Начиная с FPC 2.6.2, OpenBSD и NetBSD поддерживаются на архитектурах IA32 и X86_64. новая встроенная Добавлена цель для использования без ОС (в основном ARM Cortex M и MIPS). С помощью InstantFPC можно запускать программы Pascal, которые вовремя транслируются в виде сценариев Unix или CGI серверной части .
Ultibo core — это встроенная или «голая» среда разработки для Raspberry Pi. [8] Ultibo основан на Free Pascal и разработан на основе модифицированной версии Lazarus. IDE создана для ПК, но также портирована на Linux и Mac. Ultibo — это среда выполнения без ОС, поддерживающая большинство функций и позволяющая программисту полный контроль над оборудованием через модули RTL. Среда выполнения реализует многопоточную вытесняющую многозадачность. Программист может разместить потоки на конкретном процессоре или позволить среде выполнения автоматически распределять нагрузку, или использовать и то, и другое. Поддерживается большинство моделей Raspberry Pi, включая A, B, A+ и B+, а также Raspberry Pi 2B, 3B, 4B/400/CM4 и Zero. [9]
Интегрированные среды разработки
[ редактировать ]Как и большинство современных компиляторов, Free Pascal можно использовать с интегрированной средой разработки (IDE). Помимо независимых IDE, существуют также плагины к различным существующим IDE.
- Lazarus — самая популярная IDE, используемая программистами Free Pascal. Он выглядит и работает аналогично Delphi IDE и может использоваться для создания консольных и графических приложений, служб Windows , демонов и веб-приложений . Lazarus предоставляет кросс-платформенную среду пользовательского интерфейса, называемую Библиотекой компонентов Lazarus (LCL). Графические приложения, созданные с помощью LCL, можно портировать на другую платформу посредством перекомпиляции или кросс-компиляции .
- Free Pascal имеет собственную текстовую среду IDE, напоминающую IDE Turbo Pascal. Он создан с использованием платформы Free Vision (также включенной в Free Pascal), клона Turbo Vision. В дополнение ко многим функциям Turbo Pascal IDE, она имеет автодополнение кода и поддержку нескольких форматов файлов справки (HTML, Microsoft Compiled HTML Help (CHM), Information Presentation Facility (IPF). Вместо использования инструментов командной строки IDE использует собственный встроенный компилятор, основанный на том же исходном коде, что и компилятор командной строки и отладчик (с использованием libgdb или GDBMI), обеспечивающий его функциональность.
- Dev-Pascal — это бесплатная интегрированная среда разработки для Free Pascal и GNU Pascal , предназначенная только для Windows, без дальнейшего развития после версии FPC 2004 года и версии GPC 2005 года.
Связанные библиотеки
[ редактировать ]Помимо компилятора и IDE, Free Pascal предоставляет следующие библиотеки:
- Бесплатная библиотека времени выполнения Pascal (RTL): базовая низкоуровневая библиотека времени выполнения для общих задач программирования.
- Бесплатная библиотека компонентов (FCL): библиотека программных компонентов высокого уровня для общих задач программирования.
Примеры программного обеспечения, созданного с помощью Free Pascal
[ редактировать ]- УЛЬТИБО Ядро [10] ] — это среда разработки, предназначенная для плат Raspberry Pi без операционной системы (без операционной системы). Он использует FreePascal/Lazarus и связывает приложение с одноядерной средой выполнения.
- Beyond Compare — это утилита сравнения данных для Windows, OS X и Linux. Версии для Linux и OS X скомпилированы с помощью Lazarus/FPC.
- Cartes du Ciel — бесплатная программа -планетарий для Linux, OS X и Windows. Он отображает и маркирует большинство созвездий, планет и объектов, видимых в телескоп. Он был полностью написан на Lazarus/FPC и выпущен под лицензией GPL.
- Cheat Engine — это запатентованный бесплатный сканер памяти, шестнадцатеричный редактор и отладчик с доступным исходным кодом. Его можно использовать для читерства в компьютерных играх. Начиная с версии 6.0 он компилируется с помощью Lazarus/FPC.
- D_2D и D_3D Программы построения графиков данных . [11]
- Double Commander — это мультиплатформенный двухпанельный файловый менеджер с открытым исходным кодом, вдохновленный Total Commander, предназначенным только для Microsoft Windows.
- Free Pascal написан на Object Pascal и языке ассемблера и компилируется самостоятельно.
- HNSKY , Hallo Northern Sky — бесплатная программа-планетарий для Windows и Linux. Начиная с версии 3.4.0, написан и скомпилирован с помощью Lazarus/FPC.
- Lazarus : пакет программного обеспечения, аналогичный Delphi, для быстрой разработки графических приложений.
- MeKin2D : пакет для плоского соединения, кинематики кулачкового и зубчатого механизмов. [12]
- Morfik : Morfik WebOS AppBuilder использует Free Pascal для создания двоичных файлов CGI.
- MyNotex — бесплатное программное обеспечение для создания заметок и менеджера заметок для Linux.
- Ранние версии компилятора Nim были разработаны в Free Pascal, прежде чем он стал самостоятельным хостингом в Nim. [13]
- Peazip — архиватор с открытым исходным кодом, созданный с помощью Lazarus/FPC.
- TorChat , ранее написанный на Python, теперь переписывается на Free Pascal и Lazarus.
- Транзистов [14] — это 32/64-битный программный синтезатор для Windows и Linux, разработанный с помощью FreePascal/Lazarus.
См. также
[ редактировать ]- fpGUI Free Pascal GUI Toolkit — кросс-платформенный набор инструментов, созданный на заказ, реализованный в Object Pascal.
Ссылки
[ редактировать ]- ^ ошибки.freepascal.org
- ^ Изменения пользователя 2.4.2
- ^ «Новые функции FPC 3.0.0» . Бесплатная вики по Паскалю . Проверено 28 февраля 2021 г.
- ^ «Новые возможности FPC 3.2.0 — бесплатная вики-страница Pascal» . wiki.freepascal.org . Проверено 20 июня 2020 г.
- ^ «Новые возможности FPC 3.2.2 — Бесплатная вики-версия Pascal» . wiki.freepascal.org . Проверено 30 декабря 2021 г.
- ^ вики freepascal: FPC JVM
- ^ Пользовательский нарисованный интерфейс
- ^ «Встроенная библиотека времени выполнения Ultibo» . Ultibo.org . Ультибо.
- ^ «Ultibo поддерживает платы Pi» . Ultibo.org.
- ^ «УЛИБО Ядро» .
- ^ «Программы черчения D_2D и D_3D» . sourceforge.net . Проверено 23 марта 2018 г.
- ^ «MeKin2D: Подпрограммы для кинематического моделирования плоского рычажного механизма» . sourceforge.net . Проверено 23 марта 2018 г.
- ^ «Источник Нима Паскаля» . Гитхаб .
- ^ «Транзистоу» .
Внешние ссылки
[ редактировать ]Официальные сайты
[ редактировать ]- Официальный сайт ФПК
- Официальный сайт Lazarus RAD IDE
Общее введение
[ редактировать ]- Официальная документация
- Введение в Modern Object Pascal для программистов - Михалис Камбурелис
Сайты, специализирующиеся на разработке игр
[ редактировать ]- Разработка игр на Паскале
- Журнал Паскаль Геймер
- Учебное пособие по программированию FPC 4 GBA — обширное руководство по программированию игр на Game Boy Advance с использованием Free Pascal.
- Бесплатный Паскаль
- Классическое программное обеспечение Mac OS
- Составители
- Кроссплатформенное бесплатное программное обеспечение
- Кроссплатформенное программное обеспечение
- Бесплатные компиляторы и интерпретаторы
- Бесплатное программное обеспечение, написанное на языке Паскаль.
- Инструменты программирования Linux
- Инструменты программирования MacOS
- Программное обеспечение МорфОС
- Объектно-ориентированные языки программирования
- Паскаль (язык программирования)
- Компиляторы Паскаля (языка программирования)
- Семейство языков программирования Паскаль
- Программное обеспечение Паскаль (язык программирования)
- Разработка с учетом платформы
- Инструменты программирования для Windows
- Самостоятельное программное обеспечение
- Программное обеспечение, использующее лицензию GPL
- Программное обеспечение Солярис
- Языки системного программирования