
Monad - FunFunFunction #21
About this video
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 it appears in the archive
Recommended to people confused by monads as a friendly, practical explanation for JavaScript developers, with one commenter saying it finally made it click.
AI-generated summary and labels from the source dataset; verify important details against the video. Source & credits.
From the Hacker News discussion
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] [VIDEO]
Read original comment ↗I like how mpj explains it. Monad - FunFunFunction #21 [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]
Read original 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]: [VIDEO]
Read original 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? [LINK] [VIDEO]
Read original comment ↗