Chaque fois que quelqu'un promet "d'expliquer monades", mon intérêt est piqué, pour être remplacés par de la frustration lorsque la prétendue "explication" est une longue liste d'exemples dénoncé par certains de la main gauche remarque que la "théorie mathématique" derrière le "ésotérique idées", "trop compliqué à expliquer à ce stade".
Maintenant je pose la question pour le contraire. J'ai une connaissance solide de la catégorie théorie, et je n'ai pas peur de diagramme de chasser, le lemme de Yoneda ou aux foncteurs dérivés (et même sur les monades et adjunctions dans les catégorique sens).
Quelqu'un pourrait-il me donner une claire et concise définition de ce qu'est une monade est dans la programmation fonctionnelle? Le moins d'exemples les mieux: parfois, un concept clair, dit plus d'une centaine de timides exemples. Haskell ferait bien comme une langue à des fins de démonstration si je ne suis pas pointilleux.