Funkcionální programování: Porovnání verzí

Smazaný obsah Přidaný obsah
→‎Simulování stavu: <s>?Hoareho logika
Řádek 108:
 
=== Simulování stavu ===
Některé úlohy se zdají být většinou implementovány pomocí stavu. [[Čistě funkcionální]] programování provádí tyto úlohy a vstupně výstupní úlohy (jako je třeba přijmutí uživatelského vstupu a výstup na obrazovku) jinou cestou. Čistě funkcionální jazyk, jako je Haskell, je implementuje za použití [[monády (funkcionální programování)|monád]], pocházejících z [[teorie kategorií]]. Monády jsou extrémně silný nástroj a nabízí intuitivní cestu jak modelovat [[Status (počítač)|stav]] (a jiné [[vedlejší efekt]]y jako například vstupy a výstupy) v imperativním stylu bez ztráty čistoty. Zatímco existující monády jsou jednoduché na použití, pro spoustu lidí je těžké definovat novou monádu (která je občas potřebná pro určité typy knihoven). Alternativní metody jako třeba <s>[[Hoareho logika]] a</s> [[unikátnost]] byly vytvořeny pro sledování vedlejších efektů v programu. Některé moderní vývojové jazyky používají efektní systém k jednoznačnému zjištění vedlejších efektů.
 
=== Záležitosti efektivity ===