An episode of FunFunFunction explaining monads in JavaScript as functors that also implement flatMap. It builds on the preceding functor episode and works through code examples.
Why Hacker News points people here: Recommended to people confused by monads as a friendly, practical explanation for JavaScript developers, with one commenter saying it finally made it click.
“I saw a video by MPJ/Funfunfunction [0] and it finally made sense.”HN comment, 2021
“I saw a video by MPJ/Funfunfunction [0] and it finally made sense.”
Finally made monads make sense after months of trying
Full comment
I read this example years ago, and it didn't clear anything up for me. After half a year of trying to understand monads, I saw a video by MPJ/Funfunfunction [0] and it finally made sense. [0] this video
RecommendsintellectableJul 2016
“I like how mpj explains it.”
Fun explanation of monads
Full comment
I like how mpj explains it. Monad - FunFunFunction #21 this video Furthermore, the creator of Elm has a fun explanation too. Evan Czaplicki - Let's be mainstream! User focused design in Elm - Curry On link More serious computer scientist explains monads in the following. Erik Meijer: Functional Programming link and here too link
Recommendsicc97Feb 2018
“Try the funfunfunction video [0]”
Explains flatmap and monads for JavaScript developers
Full comment
Here's a half baked explanation, as in just the flatmap part. map is understood in javascript. So you 'just' need to make the leap to flatmap. Which is mapping something and flattening the result. So still you need to learn is what flatten is. But that's not too hard to learn. Try the funfunfunction video [0] [0]: this video
Cites itcosinetauMar 2017
Offered as a monad explanation for a confused asker
Full comment
A nomad is something that goes "nom!" ;) A monad is basically an function, in the algebra sense, that will take a set of input, and map it to a different output. That's the most simple definition I can give without getting into the math, and it's been a minute since I've really gotten into Group theory. Maybe through a Haskell tutorial for some hands-on guidance? linkthis video