Ohledně otázky, zdali je pro člověka přirozenější funkcionální nebo imperativní paradigma je myslím odpověď jasná. Stačí nebejt "provinční" a zvednout hlavu od monitoru.
V jaké formě je psaná každá kuchařka? Ve stylu:
= rozděl vejce na žloutek a bílek
= bílek utři na sníh
= přimíchej tam žloutek, cukr a mouku a olej
= nalejte do formy
= pečte hodinu při 200 stupních
Nebo stylem:
= bílek a žloutek získáte rozdělením vejce
= sníh získáte ušleháním bílku
= těsto na bábovku získáte smíšením sněhu, žloutku, cukru a mouky a oleje
= neupečenou bábovku získáte nalitím těsta do formy
= bábovku získáte hodinovým pečením neupečené bábovky při 200 stupních.
(ideálně ještě nikoliv tomto pořadí :-))
?
FP má nemálo výhod - ale rozhodně to není způsob, jak lidé přirozeně přemýšlí.
Co se týče vysvětlení monád, tak nejlepší text, co jsem našel, mi přijde tento:
https://wiki.haskell.org/IO_inside(teda doufám, že monády chápu správně, v haskellu jsem dělal jen zkoušku na VŠ :-)