4 ms·
> The idea behind a monad is to factor out the plumbing code so that its complexity is hidden, leaving only the composition of the functions visible. cue light
by breckinloggins 14y ago
> The idea behind a monad is to factor out the plumbing code so that its complexity is hidden, leaving only the composition of the functions visible.
cue light bulb coming on
Thanks so much for this article; I've been trying to understand monads forever now. The closest I got was the "burrito" analogy, but I always wanted a more mathematically sound intuition.
For helpful reference, here's a collection of monad tutorials and related pedagogy:
- Monads are burritos [https://speakerdeck.com/u/dimituri/p/a-monad-is-just-a-burrito https://speakerdeck.com/u/dimituri/p/a-monad-is-just-a-burri...] (slide deck)
- No, they really aren't [http://byorgey.wordpress.com/2009/01/12/abstraction-intuition-and-the-monad-tutorial-fallacy/ http://byorgey.wordpress.com/2009/01/12/abstraction-intuitio...]
- Well yeah, they kinda are [http://blog.plover.com/prog/burritos.html http://blog.plover.com/prog/burritos.html]
- But anyway, you probably have already invented them yourself; you just didn't realize it [http://blog.sigfpe.com/2006/08/you-could-have-invented-monads-and.html http://blog.sigfpe.com/2006/08/you-could-have-invented-monad...]
- And even if you didn't, you can always learn about it from that crowd-sourced fountain of programmer knowledge, StackOverflow (and this question hasn't even been closed as "not constructive"!) [http://stackoverflow.com/questions/44965/what-is-a-monad http://stackoverflow.com/questions/44965/what-is-a-monad]
- Of course, once you understand basic category theory, you should be set anyway. What are you, some kind of Java programmer? [http://reperiendi.wordpress.com/2007/11/03/category-theory-for-the-java-programmer/ http://reperiendi.wordpress.com/2007/11/03/category-theory-f...]
- But really, a monad is just a monoid in the category of endofunctors, what's the problem? [http://stackoverflow.com/questions/3870088/a-monad-is-just-a-monoid-in-the-category-of-endofunctors-whats-the-problem http://stackoverflow.com/questions/3870088/a-monad-is-just-a...]