Ale s monadami vas Haskell jako jazyk nenuti pracovat a rozhodne vam nehaze klacky pod nohy (spise naopak - do notace). Akorat pokud je nepouzijete, tak je to vas problem - kod bude zbytecne neprehledny a napr. IO bude stejne nebezpecne jako OOP/imperativnich jazycich, takze z Haskellu neziskate zadnou vyhodu - mohli jste rovnou zustat u OOP a vyslo by vas to lepe, kdyz se snazite Haskell pouzivat jako Javu
.
Haskell je dost prakticky zamereny (to me velmi prekvapilo, jsem ho vzdy ze skoly a clanku vnimal jako nejakou nepouzitelnou hracku) - umoznuje kvuli debugovani a optimalizacim hodne unsafe veci. Kdo chce prasit (=nepouzivat pri FP pristupu monady), ani Haskell mu nepomuze.
FP je o pristupu, ne jen o jazyku. Viz spory o tom, co je OOP - psat v Jave != praktikovat OOP. Neznam Elixir, ale myslim, ze nebyl ciste FP, takze bych se nedivil, kdyby tam byly mutable veci podobne jako ve Scale. Pokud vim, tak mutable veci jsou i v Haskellu a ten je casto oznacovan jako pure FP jazyk. Napr. v te Scale sam tvurce nezavrhuje mutable (at promenne nebo datove struktury), ale pouze za urcitych podminek (pouze lokalni, neprosakuji nikam ven).
... Možná je prostě lepší naučit se používat konkrétní typy monád a na abstraktní aparát za nimi se vykašlat, protože většina kodérů jej stejně nikdy v té abstraktní rovině nevyužije.
Ja si sice teorii precet, ale mam pocit, ze spis spadam do tech koderu
. Ale svete div se, na to abych monady pouzival (jsem zelenac, nedavno jsem poprve pracoval se State monad) nepotrebuji skvele ovladat teorii za tim.