Free Pascal
Z Wikipedii
Free Pascal | |
Rodzaj | Kompilator |
Pierwsze wydanie | 2000 |
Aktualna wersja stabilna | 2.2.0 / 10 września 2007 |
Producent | Wolontariusze |
Licencja | GPL |
Platforma systemowa | Wieloplatformowy |
www.freepascal.org | |
Free Pascal (albo FPK Pascal, albo FPC) jest 32 oraz 64-bitowym kompilatorem języka Pascal dostępnym na wiele różnych platform sprzętowych i systemów operacyjnych.
Spis treści |
[edytuj] Wprowadzenie
Kompilator Free Pascal jest rozpowszechniany zgodnie z licencją GPL. Biblioteki wykonawcze oraz dodatkowe pakiety rozpowszechniane razem z kompilatorem objęte są jednak zmodyfikowaną licencją LGPL. Modyfikacja owa polega na tym, że autorzy jasno wyrazili zgodę na dołączanie (linkowanie) tych bibliotek do innych programów bez względu na licencję tworzonego programu i sposób łączenia (statyczne lub dynamiczne).
Początkowo projekt nosił nazwę FPK Pascal. FPK stanowiło skrót od niemieckojęzycznej nazwy Frei Pascal Kompiler, a także oznaczało inicjały twórcy projektu (Florian P. Klaempfl). Podczas wydania wersji 1.0 skrót jak i nazwę zmieniono na odpowiednio FPC i Free Pascal Compiler.
Obecna wersja stabilna to 2.0, mocno przebudowana w stosunku do poprzedniej serii 1.0.x.
Wizualną częścią bibliotek dla FPC, zgodną z VCL znanym z Delphi, a także stworzeniem narzędzia typu RAD, zajmuje się osobny projekt - Lazarus.
FPC posiada własne IDE stworzone w trybie tekstowym, jednak nie jest już ono wspierane, mimo że zawiera wiele błędów.
FPC rozpoznaje i kompiluje kod Pascala zapisany w poniższych dialektach tego języka:
- FPC - domyślny tryb pracy kompilatora;
- obiektowy FPC - dialekt podobny do FPC, z tym, że dopuszcza użycie rozszerzeń Object Pascala
- Delphi - tryb zgodności z Delphi w wersji 4
- GPC - zgodność z kompilatorem GPC z pakietu GCC
- Mac (wciąż w fazie tworzenia) - zgodność z dialektem Pascala firmy Apple
- TP - zgodność z dialektem użytym w kompilatorze Turbo Pascal 7
[edytuj] Możliwości
Składnia języka jest semantycznie zgodna z TP 7.0 tak samo jak z większością wersji Delphi (klasy, RTTI, wyjątki, ansistrings). Free Pascal udostępnia pełny zakres programowania obiektowego. Możliwe jest przeciążanie funkcji i przeciążanie operatorów oraz zagnieżdżanie komentarzy. Free Pascal obsługuje arytmetykę 64-bitową, SSE. Wbudowana jest optymalizacja dla procesorów Pentium, AMD, AMD64.
[edytuj] Historia
Free Pascal powstał w czasie, kiedy stało się jasne, że firma Borland nie wyda kolejnej - ósmej wersji dosowego kompilatora Turbo Pascal. Zamiast niego powstał kompilator Delphi dostępny tylko dla użytkowników Windows. Student Florian Klaempfl zaczął pisać swój własny 16-bitowy kompilator dla DOSa. Po dwóch latach przepisał go na architekturę 32-bitową przy użyciu rozszerzenia go32v1.
Kompilator został opublikowany w internecie, co spowodowało przyłączenie się do projektu innych programistów. Na pięć lat przed powstaniem Kyliksa Michael van Canneyt stworzył port FPC dla Linuksa. W międzyczasie powstał port dla OS/2, a pierwotna wersja dla DOSa została znacznie ulepszona. Programiści zdecydowali się wydać wersję 0.99.5, która doczekała się także portu dla procesorów 680x0.
W kolejnej wersji 0.99.8 został dodany port dla platformy Win32 i rozpoczęły się prace nad dodaniem kompatybilności z Delphi. 12 lipca 2000 ukazała się pierwsza stabilna wersja 1.0. Kolejne wydania z serii 1.0.x zawierały głównie poprawki błędów oraz wciąż rozwijany port dla procesorów 680x0. Kłopoty w implementacji tego portu skłoniły zespół programistów FPC do rozpoczęcia prac nad nową serią 1.1.x (przekształconą później w 1.9.x). Miała ona zawierać przepisany od nowa generator kodu ułatwiający portowanie kompilatora do zupełnie nowych architektur.
Na początku 2003 roku powstał port dla PowerPC, a niedługo potem dla AMD64. Rozpoczęto też prace nad portami ARM i Sparc. Wersja FPC dla AMD64 uczyniła go kompilatorem zarówno 32- jak i 64-bitowym.
15 maja 2005 miała miejsce długo wyczekiwana premiera wersji 2.0. Przyniosła ona zmianę struktury kompilatora na bardziej modularną, by ułatwić jego przenoszenie na nowe platformy. Poprawiono obsługę wątków i optymalizację kodu. Kompilator przeniesiono na systemy MacOS 9 i X, MorphOS oraz Novell Netware.
Kwiecień 2006 przyniósł pierwszy snapshot kompilatora dla platformy Win64 Vista
W chwili obecnej dostępna jest wersja 2.2.0. Pracę nad tą wersją rozpoczęto już w drugiej połowie 2005 roku.
[edytuj] Platformy docelowe
Obecne wydanie stabilne 2.0 jest dostępne dla procesorów
[edytuj] Linki zewnętrzne
- http://www.freepascal.org/ - oficjalna strona projektu (en).