Domů » Informatika » Programovací jazyk » Jazyk Haskell


Jazyk Haskell

Jazyk Haskell je moderní a čistě funkcionální programovací jazyk. Jeho první verze vznikala v letech 1987 až 2003 a je pojmenovaný podle amerického matematika jménem Haskell Brooks Curry (1900–1982).

Filozofie

Základním stavebním blokem programu je funkce. Každá funkce má parametry a návratovou hodnotu. Funkce zavolaná se stejnými parametry vrátí vždy stejný výsledek – vyhodnocování funkce totiž nemá žádné postranní efekty. Je tedy snadnější ověřit, že se funkce chová správně. Složitější funkce a celý program se pak vytváří vnořováním jednotlivých funkcí do sebe.

I když by se mohlo zdát, že jsou tím možnosti programovacího jazyka omezené, je tomu právě naopak. Zápis programu pomocí funkcí je mnohem čístější, přesnější a pro člověka přirozenější. Úroveň abstrakce je velmi vysoká a programátora nemusí zajímat, jak konkrétně se vyhodnocení funkcí provede. Výsledný zdrojový kód je kratší, tím pádem statisticky obsahuje i méně chyb a jeho údržba je jednodušší. Ve zdrojovém kódu se také neobjevují žádné zbytečné konstrukce.

Jazyk Haskell používá tzv. líné vyhodnocování (lazy evaluation). To znamená, že se funkce nevyhodnocují, dokud nemusí. Tato vlastnost umožňuje používat například nekonečné datové struktury a ve většina případů vede k významnému zrychlení programu. A to bez jakékoliv práce navíc.

Jazyk Haskell je staticky typovaný. Kompilátor tedy zná typy všech entit. Tyto typy lze uvést ručně, ale není to bezpodmínečně nutné. Kompilátory totiž používají typovou inferenci, která se typy pokusí sama odvodit.

Syntaxe

Programování

Pro vývoj programů v jazyce Haskell toho není potřeba mnoho. Stačí libovolný textový editor a kompilátor. V současnosti se nejvíce používá kompilátor GHC (Glasgow Haskell Compiler), který obsahuje i interaktivní interpreter (GHCi).

Zdrojové kódy programů v jazyce Haskell mají zpravidla příponu hs. Pro většinu platforem jsou již připravené vývojové balíčky.

Spuštění zdrojového kódu pomocí GHC (bez kompilace) se provede příkazem:

kód v jazyce BASH - Zobrazit

  1. runghc program.hs

Kompilace zdrojového kódu pomocí GHC se provede příkazem:

kód v jazyce BASH - Zobrazit

  1. ghc program.hs -o program

Reference