Język programowania - Fortran
Fortran lub FORTRAN (ang. FORmula TRANslator) to język programowania stworzony w latach 50. i nadal będący w użyciu. Był to niegdyś język proceduralny, obecnie także daje możliwość użycia struktur (Fortran 90/95), a jego głównym zastosowaniem są obliczenia naukowe i analiza numeryczna.
Z pierwszych wersji języka pochodzi zasada braku rozróżniania małych i dużych liter w słowach kluczowych języka oraz używanych zmiennych a także bogate zasady tworzenia formatów zapisywanych i drukowanych danych.
Dostępna jest wielka ilość bibliotek w Fortranie pozwalających rozwiązywać praktycznie każde zadanie numeryczne. Podstawowe przyczyny, dla której Fortran jest wykorzystywany i rozwijany do dziś, to: szybkość obliczeń oraz wysoka jakość kodu generowanego przez kompilatory Fortrana, wynikająca m.in. z jego długiej obecności na rynku programistycznym, znakomita skalowalność i przenośność oprogramowania (pomiędzy różnymi platformami sprzętowymi i systemami operacyjnymi), a także dostępność bibliotek dla programowania wieloprocesorowego i równoległego. Obliczenia aerodynamiczne, wytrzymałościowe i cieplne obecnie prowadzone są wyłącznie z użyciem tego języka.
Do niedawna te zalety były okupione brakiem dobrych metod wizualizacji czy niskopoziomowej komunikacji z systemem operacyjnym, gdyż te zagadnienia są pominięte w kolejnych standardach języka (aż do Fortranu 95 włącznie). Obecnie producenci kompilatorów, a zwłaszcza producenci niezależni, wzbogacają je o możliwość stosowania grafiki celem wizualizacji wyników obliczeń (wykresy, wizualizacja tablic wielowymiarowych) poprzez dostarczanie odpowiednich bibliotek.
Historia i standardy
Pierwszy kompilator Fortranu stworzył zespół Johna Backusa, który w latach 1954-1957 pracował on dla IBM. Kompilator ten był pierwszym w historii kompilatorem języka wysokiego poziomu. Został starannie zoptymalizowany, ponieważ autorzy obawiali się, że nikt nie będzie go używał, jeśli wydajność programów nie będzie porównywalna do programów napisanych w asemblerze.
Pierwsza standaryzacja nastapiła w 1960 roku, kiedy opisano pierwszy standard języka znany jako Fortran IV. Kolejnym standardem był Fortran 66. Standard ten był zbyt ubogi i implementacje musiały zawierać wiele rozszerzeń. W latach siedemdziesiątych American National Standard Institute (ANSI) opracowała kolejny standard nazwany Fortran 77 który w roku 1980 stał się światowym standardem.
Jego struktura przystosowana jest do używanych wówczas powszechnie kart perforowanych, ale zawierała elementy programowania strukturalnego. W Polsce bardzo popularna była odmiana Fortranu na maszyny ICL/Odra (FORTRAN 1900), a także Watfor 77, Lahey 77 i MS Fortran na PC czy Fortran 80 dla 8-bitowych komputerów z systemem CP/M-80. W praktyce większość tych kompilatorów miała wiele rozszerzeń, które dopiero po latach weszły do kolejnego standardu (struktury rekordowe, alokowalne tablice, więcej instrukcji pozwalających na programowanie strukturalne itp.). Następcą Fortranu 77 stał się Fortran 90. Standard ma całkowicie zmienioną składnie dostosowaną do współczesnych języków programowania, przykładowo Fortran 90 nie wymusza już na użytkowniku stosowania etykiet i instrukcji Goto.
Kolejnym standardem jest Fortran 95, zmiany w stosunku do poprzedniej wersji są niewielkie. Pomimo wprowadzenia nowych standardów Fortran 77 jest nadal w użyciu (głównie przez starszych programistów przyzwyczajonych do tej wersji), co uwzględniają producenci praktycznie wszystkich kompilatorów – na przykład kompilator Compaq Visual Fortran (wcześniej Digital Visual Fortran) kompiluje programy napisane w standardach 66/77/90/95. Najnowszy standard języka nosi nazwę Fortran 2003
FORTRAN czy Fortran
Należy wspomnieć o tym, że obecnie stosujemy pisownię nazwy języka Fortran, wczesne standardy języka aż do wersji 66 włącznie oznaczano jako FORTRAN.
Przykład kodu
FORTRAN77 (Hello, world)
PROGRAM HELLO
PRINT *, 'hello, world'
END
Kompilatory języka Fortran 90/95
GNU Fortran 95 - jeden z podprojektów GCC
G95 Project (Linux) - darmowy
VAST/f90 (Linux) - darmowy kompilator dla użytkowników indywidualnych (a właściwie translator F77 do F90)
Intel Fortran Compiler (Linux, Windows) - w wersji pod Linuksa darmowy dla niekomercyjnych zastosowań
Absoft Pro Fortran (Linux, Windows, Mac OS, PowerPC) - płatny
Compaq Visual Fortran (Windows, Linux/Unix/OpenVMS Alpha, OpenVMS VAX) - płatny
Lahey/Fujitsu Fortran (Windows, Linux, SPARC Solaris) - komercyjny
NAGWare f95 (Linux, Mac OS, SPARC Solaris, IRIX, SunOS, OSF/1, PA-RISC) - komercyjny
NA Software FortranPlus (Linux, Windows) - płatny
Portland Group PGHPF Workstation (Linux, Windows) - płatny
Salford FTN95 (Windows) – płatny
1
Legionista1