Haskell je čistě funkční programovací jazyk založený výhradně na matematických a logických procesech. Funkční programování je forma deklarativního programování, což znamená, že se program zaměřuje spíše na svou povahu a na to, čeho by měl dosáhnout, než na podrobnost a uspořádání, jak by to mělo být provedeno (stejně jako imperativní programování). Čistě funkční povaha Haskellu poskytuje vývojářům přímý kód, který mohou studovat, aby jasně porozuměli logice programu, aniž by brodili příkazy a zdlouhavými částmi kódu.
Charakteristika Haskella a funkčního programování
Funkční programování usnadňuje analýzu kódu; je to logické, matematické a konkrétní. Haskell je jedním z hlavních příkladů čistě funkčního jazyka. To bylo jmenováno pro Haskell Brooks Curry, matematik a logik, jehož práce položila základy pro vývoj funkčních programovacích jazyků. Haskell je populární mezi některými podniky, například finančními a technologickými, které vyžadují velmi konkrétní, správné a explicitní matematické procesy.
Charakteristiky Haskellu (a čistě funkčního programování obecně) zahrnují:
Čistý funkce snadněji se analyzují a testují a jsou nezávislé na vnějších událostech. Čisté funkce, jinými slovy, vracejí pokaždé stejnou odpověď, aniž by to ovlivnilo ostatní části programu.
Ne nežádoucí účinky protože funkce vracejí stejnou hodnotu pokaždé, když jsou vyvolány, nemají vedlejší účinky jinde v programu. Vedlejší účinek často mění stav samotného programu, nejen místní oblast, ve které se objevuje. Protože jsou funkce čisté, vývojáři se mohou při práci v Haskellu vyhnout jakýmkoli vedlejším účinkům.
Líné hodnocení program vyhodnotí funkci pouze tehdy, když je to naprosto nutné. Nebude vyhodnocovat funkce jen proto, že. To je efektivnější.
Statické psaní programátor musí při vývoji programu přiřadit datový typ proměnné. Program obvykle předpokládá tento typ pro každou následující instanci proměnné.