Gratis Pascal
Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från
versionen som granskades den 2 december 2016; kontroller kräver
43 redigeringar .
Gratis Pascal |
---|
|
Gratis Pascal körs på kommandoraden |
Sorts |
kompilator |
Författare |
Gratis Pascal team |
Utvecklare |
Florian Klampfl och andra projektdeltagare |
Skrivet i |
Objekt Pascal och assemblerspråk |
Operativ system |
Linux , Mac OS X , etc. UNIX-liknande , Windows , DOS , OS/2 , Novell Netware , Android , AmigaOS , AmigaOS 4 , AROS , MorphOS |
Första upplagan |
1997 |
Hårdvaruplattform |
x86 / 64 , SPARC , m68k , PowerPC /64, ARM |
senaste versionen |
|
Läsbara filformat |
FreePascal-kompilerad enhet [d] |
Genererade filformat |
FreePascal-kompilerad enhet [d] |
stat |
aktiva |
Licens |
GNU GPL 2 [2] |
Hemsida |
freepascal.org |
Mediafiler på Wikimedia Commons |
Free Pascal (fullständigt namn Free Pascal Compiler , ofta förkortat FPC ) är en fritt distribuerad kompilator för programmeringsspråket Object Pascal .
Plattformar
Kompilatorn finns för olika hårdvaru- och mjukvaruplattformar, grenen 3.0.x stöder följande:
- MIPSEL arkitektur
- Linux (experimentellt stöd, ej testat)
Tidigare versioner stödde också m68k- arkitekturen ( operativsystem NetBSD , Linux och AmigaOS ), samt operativsystemen Solaris , QNX och BeOS x86.
Under utveckling - stöd för kodgenerering för Java Virtual Machine [15] .
Bibliotek och skal
För närvarande utvecklar projektet även Lazarus – en gratis analog till Delphis utvecklingsmiljö och Lazarus Components Library (LCL) – ett gratis widgetbibliotek som liknar VCL i Delphi.
Det finns också alternativa visuella programmeringsprojekt baserade på Free Pascal, varav det mest mogna är MSEide , som använder sitt eget, VCL-inkompatibla komponentbibliotek MSEgui.
Ett alternativ till Lazarus'u fpGUI är ett enkelt widgetbibliotek som inte innehåller ytterligare bibliotek som att arbeta med en databas , XML och liknande. Den innehåller en visuell formulärredigerare som genererar källkoden för att skapa ett formulär i Pascal.
Dessutom, för närvarande, kan det välkända icke-visuella biblioteket KOL användas för att skapa Windows-applikationer .
Kompatibilitetslägen
En viktig egenskap hos denna kompilator, i motsats till till exempel GNU Pascal , är dess fokus på vanliga kommersiella dialekter av språket: Object Pascal och Delphi .
Free Pascal stöder kompilering i flera lägen som ger kompatibilitet med olika dialekter och implementeringar av språket.
- FPC -läge - egen dialekt: motsvarar den föregående, utökad med ytterligare funktioner, som till exempel operatörsöverbelastning .
- ObjFPC- läge - kombinerar de objektorienterade funktionerna i Delphi och modersmålstillägg.
- Delphi Mode - Detta läge tillhandahålls för kompatibilitet med Embarcaderos Delphi -kompilator för att förenkla porteringen av befintliga källfiler till Free Pascal. För att göra detta måste du aktivera detta läge med ${mode Delphi} -direktivet i källfilen eller med alternativet -Mdelphi på kompilatorns kommandorad.
- TP/BP -läge - Detta läge ger maximal kompatibilitet med Turbo Pascal / Borland Pascal-kompilatorer för att göra det lättare att porta befintlig kod till FPC. Det drar fördel av funktioner som inte anses rekommenderade genom att ändra syntaxreglerna något. Om det behövs gör den ändringar i standardläget $ASMMODE INTEL assembler, etc. För att göra detta måste du aktivera detta läge med ${mode TP} -direktivet i källfilen eller med alternativet -Mtp på kompilatorns kommandorad.
- MacPas- läge - Mac Pascal -kompatibilitetsläge .
- ISO 7185- läge
- ExPas- läge
- GPas - läge var ett kompilatorläge med vilket Free Pascal försökte kompilera endast giltig GNU Pascal - kod . Detta läge har tagits bort från Free Pascal-kompilatorn sedan version 2.2.
Funktioner
- Stöd för överbelastning av aritmetiska operatorer ( +, -, *, /, div, mod, **), jämförelseoperatorer ( <, >, =, >=, <=), logiska operatorer ( and, or, xor, not, shl, shr), setoperatorer ( ><, in) och tilldelningsoperator :=.
- Stöd för tilldelningsoperatorer med aritmetisk operation i C -stil ( +=, -=, *=, /=).
- Eget byggsystem (fpcmake) och dokumentationsgenerator (fpcdoc).
- Inline assembler använder AT&T - syntax som standard , Intel- syntax aktiveras av ett separat direktiv.
Kort historik
- 1993 - början av arbetet med projektet.
- 1995 - Kompilatorn kompilerar sig själv framgångsrikt.
- 1996 - Projektet publiceras på Internet under GNU GPL.
- 12 juli 2000 - release av version 1.0.
- 2003 - release av version 1.0.10, slutförande av arbetet med 1.0.x-grenen.
- 15 maj 2005 - release av version 2.0.
- 10 september 2007 - release av version 2.2.
- 30 december 2009 — release av version 2.4.
- 12 november 2010 — release av version 2.4.2.
- 20 maj 2011 — release av version 2.4.4
- 1 januari 2012 - release av version 2.6.0
- 23 februari 2013 - release av version 2.6.2
- 11 mars 2014 — release av version 2.6.4
- 25 november 2015 - release av version 3.0.0
- 15 februari 2017 — release av version 3.0.2 [16]
- 28 november 2017 — release av version 3.0.4 [17]
- 19 juni 2020 – release av version 3.2.0 [18]
Licens
Kompilatorn distribueras under villkoren för GNU General Public License , och en betydande del av biblioteken, inklusive RTL- kärnan , under villkoren för den mjukare GNU Lesser General Public Licensen .
Se även
Anteckningar
- ↑ https://forum.lazarus.freepascal.org/index.php/topic,54712.0.html
- ↑ http://svn.freepascal.org/svn/fpc/trunk/compiler/COPYING.txt
- ↑ FPC från trunk för arm-aros . Hämtad 12 januari 2021. Arkiverad från originalet 14 januari 2021. (obestämd)
- ↑ FreePascal 3.2.0 för arm AROS ABIv0 (nedlänk) . Hämtad 12 januari 2021. Arkiverad från originalet 16 april 2021. (obestämd)
- ↑ Stabil FPC 3.0.1 för i386-aros . Hämtad 12 januari 2021. Arkiverad från originalet 14 januari 2021. (obestämd)
- ↑ FreePascal 3.2.0 för i386 AROS ABIv0 (nedlänk) . Hämtad 12 januari 2021. Arkiverad från originalet 16 april 2021. (obestämd)
- ↑ FPC från trunk för x86_64-aros . Hämtad 12 januari 2021. Arkiverad från originalet 14 januari 2021. (obestämd)
- ↑ FreePascal 3.2.0a för AmigaOS 3.x (nedlänk) . Hämtad 12 januari 2021. Arkiverad från originalet 14 januari 2021. (obestämd)
- ↑ FPC Amiga/AROS m68k . Hämtad 12 januari 2021. Arkiverad från originalet 14 januari 2021. (obestämd)
- ↑ FPC AmigaOS 4 . Hämtad 12 januari 2021. Arkiverad från originalet 14 januari 2021. (obestämd)
- ↑ Gratis Pascal 3.2.0 för AmigaOS4 . Hämtad 8 maj 2022. Arkiverad från originalet 17 april 2021. (obestämd)
- ↑ FreePascal 3.2.0a för AmigaOS 4.x (nedlänk) . Hämtad 12 januari 2021. Arkiverad från originalet 16 april 2021. (obestämd)
- ↑ FPC MorphOS . Hämtad 12 januari 2021. Arkiverad från originalet 13 januari 2021. (obestämd)
- ↑ FreePascal 3.2.0 för MorphOS (nedlänk) . Hämtad 12 januari 2021. Arkiverad från originalet 16 april 2021. (obestämd)
- ↑ FPC JVM . Datum för åtkomst: 4 december 2011. Arkiverad från originalet 4 februari 2012. (obestämd)
- ↑ Gratis Pascal - Nyheter (nedlänk) . Hämtad 25 juni 2017. Arkiverad från originalet 20 juli 2017. (obestämd)
- ↑ Gratis Pascal - Nyheter (nedlänk) . Hämtad 25 juni 2017. Arkiverad från originalet 20 juli 2017. (obestämd)
- ↑ FPC 3.2.0 släppt! . forum.lazarus.freepascal.org . Hämtad 1 augusti 2020. Arkiverad från originalet 20 juli 2017. (obestämd)
Litteratur
Länkar