Pascal za darmo

Spis treści

Free Pascal

www.brain.unifreiburg.de/~klaus/fpc/fpc.html

Z całą pewnością najbardziej wszechstronny z darmowych kompilatorów języka Pascal. Wynikiem jego działania są pliki binarne do procesorów x86 i M68k. Jeżeli chodzi o obsługiwane platformy systemowe, to gotowe są wersje kompilatora do DOS-u, Linuksa, Atari, Amigi, Windows 95NT, OS/2. Trwają też prace nad przygotowaniem wersji do FreeBSD.

Pascal za darmo
Ambicją twórców - częściowo zrealizowaną - była zgodność z Turbo Pascalem 7 i Delphi 4. Zamiar nie powiódł się w pełni wyłącznie z powodu wieloplatformowości języka i dlatego, że pakiet zdolny jest generować jedynie programy 32-bitowe. Mimo mnóstwa dostępnych opcji kompilacji i bogactwa dołączanych narzędzi ciągle brakuje aplikacji integrującej całe środowisko. Na razie każdy z programów wchodzących w skład pakietu uruchamia się oddzielnie.

Użytkownicy przyzwyczajeni do pracy z produktami Borland będą musieli oswoić się z pewnymi różnicami między TP i Delphi a dialektem Free Pascal. Najważniejsza to brak lub inna obsługa niektórych poleceń i zmiennych (Mem, Port). Ze względu na charakter wynikowych aplikacji pomijane są niektóre dyspozycje dotyczące kompilacji (Far, Near). Brakuje także TurboVision. W zamian program oferuje jednak możliwość skorzystania z bibliotek o analogicznym przeznaczeniu - FreeVision. Naturalnie nie można też liczyć na zgodność bibliotek na poziomie binarnym.

Twórcy Free Pascala wprowadzili też do języka sporo modyfikacji mających ułatwić pracę programisty. Doskonałym przykładem jest możliwość zwracania przez funkcje danych złożonego typu (jak rekordy czy tablice). Inne udogodnienie to opcja deklarowania funkcji o tej samej nazwie i różniących się między sobą rodzajem parametrów. Oprócz tego użytkownik napotka oczywiście mnóstwo drobnych dodatków w postaci obsługi długich nazw plików lub lokalnego wykorzystywania nazwy funkcji w charakterze zmiennej.

Wielkie brawa należą się autorom kompilatora za doskonałą dokumentację. Obszerna instrukcja i opis języka wraz z interesującymi przykładami dostępne są w formie plików Acrobat Reader. Pomocą użytkownikowi służą dodatkowe narzędzia, jak "upiększacz" źródeł.

Irie Pascal www.irietools.com

Program autorstwa Stuarta Kinga został przygotowany w bardzo interesujący sposób. Mimo pozornej prostoty zaimplementowanego dialektu pakiet daje stosunkowo duże możliwości. Jego podstawową zaletą jest przenośność gotowych aplikacji. Osiągnięto to w bardzo prosty sposób. Kompilator nie generuje kodu przeznaczonego do konkretnej platformy sprzętowej i systemowej, ale tworzy plik binarny pseudokodu. Taki pseudokod jest później interpretowany przez moduł uruchomieniowy, który ma, naturalnie, postać pliku wykonywalnego. Elastyczność i uniwersalność Irie Pascala polega na tym, że autor przygotował interpretery do kilku najpopularniejszych platform systemowych. Wśród nich znajdują się: Win32 (Windows 95/98/NT), DOS, Linux, OS/2, FreeBSD.

Sposób pracy przygotowanych przy użyciu Irie Pascala aplikacji rzutuje na ich prędkość i rozmiary. Ceną, jaką trzeba zapłacić za przenośność gotowych programów, jest blisko 50-krotnie mniejsza szybkość ich pracy. Mimo to warto wspomnieć, że podczas wykonywanych przeze mnie testów pod kontrolą DOS aplikacje Irie działały dużo szybciej, niż się tego spodziewałem. Przy prostszych zastosowaniach różnica jest zupełnie niezauważalna. Pewną korzyścią wynikającą z kompilacji do pseudokodu jest natomiast mniejszy rozmiar plików wynikowych. Dla uproszczenia można założyć, że kompilat Irie jest około 20-krotnie mniejszy niż analogiczny plik EXE. Naturalnie, nie należy wpadać w zbytnią euforię - konieczne jest przecież korzystanie z modułu uruchomieniowego (do platformy DOS wirtualna maszyna Irie to zbiór EXE objętości około 120 KB).

Zgodność z dialektami Borlanda nie jest duża i sprowadza się właściwie do poziomu składni oraz nazw większości poleceń. Według zapewnień autora, Irie Pascal spełnia wymagania ISO/IEC 7185 Level 0.

Na uwagę zasługują specjalne ułatwienia dla twórców programów CGI. Przykładem jest funkcja dekodująca dane przesłane z formularzy WWW. Biorąc pod uwagę przenośność programów, może ta grupa zastosowań jest do Irie najwłaściwsza. Wątpliwości budzi jednak mniejsza wydajność, mogąca zaowocować nadmiernym obciążeniem serwera.