Fortran je jeden z nejstarších vysokoúrovňových programovacích jazyků, navržený především pro numerické a vědecké výpočty. Vznikl v 50. letech 20. století a dodnes se široce používá v oblastech, kde je klíčová rychlost a přesnost aritmetických operací. Jeho syntax a konstrukce byly postupně rozšiřovány tak, aby vyhovovaly potřebám programátorů v oblasti vědeckého vývoje a vysokovýkonného počítání.
Hlavní rysy a konstrukce
Fortran je procedurální jazyk s důrazem na efektivitu generovaného kódu. Mezi jeho charakteristické vlastnosti patří:
- silné zaměření na numerické typy (reálná a celá čísla, komplexní čísla a přesné aritmetické funkce);
- podpora polí a vektorových operací přímo v jazyce (array syntax), která umožňuje stručné a efektivní vyjádření operací nad maticemi;
- jazykové konstrukce pro řízení toku programu (cykly DO, podmíněné příkazy IF/THEN/ELSE, instrukce GOTO historicky);
- moduly, rozhraní a typy umožňující lepší organizaci velkých projektů (moderní standardy);
- možnosti řízení paměti a dynamické alokace (od pozdějších verzí);
- integrované matematické a vědecké intrinzické funkce pro rychlé implementace algoritmů.
Krátká historie
Jazyk vznikl jako praktická odpověď na potřebu zrychlit psaní a údržbu numerických programů bez výrazného zhoršení výkonu oproti assembleru. První verze byla vytvořena týmem v IBM v letech 1954–1957 pod vedením Johna Backuse, což bylo významné také proto, že vývojáři kladli velký důraz na kvalitu a optimalizaci kompilátoru. Tento přístup položil základy pro vývoj optimalizačních technik v oblasti překladačů.
V průběhu desetiletí vznikly významné revize jazyka: FORTRAN IV (často označovaný též FORTRAN 66), FORTRAN 77 a později moderní přepis nazývaný Fortran 90, který zavedl volný formát zápisu, moduly, rekursi a bohatší práci s poli. Standardy pokračovaly i po roce 1997 (Fortran 95) a následovaly další revize, které rozšiřovaly možnosti jazyka směrem k objektově orientovaným rysům, lepší interoperabilitě a paralelismu.
Význam kompilátorů a optimalizace
Od počátků byl pro Fortran kritický výkon překladačů. Proto existuje mnoho komerčních i otevřených kompilátorů, které se specializují na generování velmi efektivního kódu pro numerické aplikace. Vývoj a teorie překladačů bylo silně ovlivněno právě požadavkem generovat kvalitní, rychlý strojový kód pro programy ve Fortranu.
Použití a ekosystém
Fortran je dodnes hojně používaný v oblastech jako numerická lineární algebra, meteorologie, modelování tekutin, výpočty v geofyzice, chemii a dalších technických disciplínách. Mnohé standardní knihovny pro vědecké výpočty (například BLAS a LAPACK) jsou historicky implementované ve Fortranu a stále slouží jako základ pro vysokovýkonné numerické výpočty. Fortran se také často kombinuje s jinými jazyky (např. C) pro rozhraní do moderních aplikací a vizualizačních nástrojů.
Rozdíly mezi staršími a moderními verzemi
- Starší verze používaly pevně daný formát zdrojového kódu s numerovanými řádky a častým použitím příkazu GOTO; moderní verze preferují čitelnější, volný formát a modulární strukturu.
- Novější standardy přinesly rekursi, dynamickou alokaci, modulární programování, lepší práci s datovými typy a konstrukce pro paralelní výpočet.
- Kompatibilita a zpětná kompatibilita zůstává částečně zachována, ale moderní projekty obvykle využívají novější standardy kvůli bezpečnosti a údržbě kódu.
Pro další informace o původu jazyka a jeho standardech viz: historie jazyka, datace vzniku, numerické použití, role kompilátorů, IBM a vývoj, vedení projektu, optimalizační cíle, standardy Fortranu a zavedení rekurze.