Linux E X P R E S

Facebook

Fortran

Lukáš Faltýnek představuje další programovací jazyk.


Přestože mnozí dnes jazyk Fortran řadí do kategorie dědečků, což bezesporu k ročníku svého zrodu je, nedá se o něm rozhodně říct, že by patřil do domova důchodců, a tak z aktivního světa současných počítačových jazyků nadobro zmizel.

Fortran je akronymem z FORmula TRANslator. Do verze Fortran 90 se název Fortran psal kapitálkami - FORTRAN. Teprve pro verzi Fortran 90 a dále se oficiálně používají malá písmena. Bez zajímavosti není ani rok 1960, kdy firma IBM doporučovala Fortran zapisovat jako FØRTRAN. Protože se dnes velmi často používá Fortran místo FORTRAN, není ani tento text výjimkou.

Období vzniku Fortranu spadá do rozmezí let 1954-1957, kdy desetičlenný tým vývojářů vedený Johnem Backusem (1924) stál před nelehkým úkolem vytvořit vyšší programovací jazyk, který by zjednodušil a usnadnil programování širší veřejnosti. Vývoj jazyka financovala společnost IBM a dle původních propočtů nemělo jeho vytvoření zabrat více než půl roku. Jak už to ale u obdobných projektů chodí, celý vývoj se protáhl na dlouhé tři roky.

Světu byl Fortran představen v únoru roku 1957 na Western Joint Computer Conference v Los Angeles, kde společnost IBM uspořádala jeho veřejnou demonstraci. Při této příležitosti, krátce před zahájením konference, byli někteří zákazníci požádáni o vyřešení několika úloh s použitím assembleru. Poté se jejich ručně vytvořené programy srovnávaly úlohami zapsanými ve Fortranu. Bylo ukázáno, že kód, vygenerovaný kompilátorem Fortranu, byl mnohem rychlejší než kód zapsaný v assembleru.

První kompilátor Fortranu byl vytvořen pro počítač IBM 704 a programy se zapisovaly na děrné štítky. Z tohoto důvodu byla dána přesná pravidla pro šířku řádku. S postupným přechodem na magnetická média se délka řádku řádku rozšiřovala, a tak Fortran 77 byl poslední verzí, která tyto artefakty počítačové historie obsahovala.

Před verzí Fortranu 77 byly realizovány verze Fortran I (1957), Fortran II (1958), Fortran IV (1961) a Fortran 66 (1966). Fortan III byl navržen v roce 1958, ale protože dovoloval vkládat kód v assembleru, oficiálně nikdy nevyšel. Tvůrci se domnívali, že by tak ztratil koncept vyššího programovacího jazyka, s jehož ideou byl především vytvořen.

Fortran 77 (1977) byl standardizován ANSI. Stejně pak i Fortran 90 (1990), který od Fortranu 77 doznal značných změn, a Fortran 95 (1995). Poslední verzí je dnes Fortran 2003 (2003). Protože verze Fortranu nejsou mezi sebou na 100 % zpětně kompatibilní, je na to potřeba myslet při přechodu na vyšší verzi či u přistoupení k rozpracovanému projektu, kde si případně můžeme verzi zvolit. Taktéž v mnoha implementacích Fortranu nalezneme některá rozšíření, která nevyhovují ANSI, a tak i je musíme brát na vědomí.

Kompilátorů Fortranu existuje mnoho. Z komerčních si jmenujme například Absoft, nebo Lahey/Fujitsu Fortran. Z volně šiřitelných pak GNU Fortran 95 nebo Open Watcom. Kromě kompilátorů existuje i řada užitečných nástrojů. Pro Linux například parser Forcheck pro kontrolu syntaxe, Source Navigator jako IDE, nebo f2c, který nám umožní konverzi programů napsaných ve Fortranu do jazyka C.

Syntaxe Fortranu je velmi srozumitelná. Programování respektive řešení úloh v něm pak relativně snadné. Dnes se nejčastěji setkáme s Fortranem 77, Fortranem 90 a Fortranem 95. Protože ve Fortranu 90 byla oproti Fortranu provedena výrazná rozšíření, pojďme si ve zkratce říct jaká. Tím se zároveň dostaneme do obrazu, co přibližně od Fortranu, jakožto imperativního jazyka, očekávat.

Ve Fortranu 90 oproti Fortranu 77 již nemusíme dbát na přesnou pozici znaků. Můžeme používat pole, dynamicky alokovat paměť, pracovat s ukazateli, definovat vlastní typy, používat moduly, vykonávat rekurzivní funkce, operace s maticemi. Nadto částečně umožňuje objektový přístup.

Ukázka programu Hello World:

print*,"Hello World!"
end program hello

Ukázka programu pro výpočet obsahu kruhu:

program kruh
real r, obsah, pi
parameter (pi = 3.14159)
write (*,*) 'Zadej polomer r:'
read (*,*) r
area = pi*r*r
write (*,*) 'Obsah = ', obsah
stop
end

S praktickým využitím Fortranu se dnes můžeme setkat především ve zpracovaní inženýrských a matematických úloh. Příklady použití Fortranu nalezneme u velkých společností, jakými jsou Fujitsu, HP, IBM, Intel a Sun. Pro zajímavost pak například v CDH (Command and Data Handling systém) systému na sondě Galileo. A samozřejmě i v jiných velkých systémech, kde je potřeba rychle provádět náročné matematické výpočty.

Diskuze (6) Nahoru