3 ms·
It's true that you don't need to know Haskell in order to learn about monads, but Haskell is a perfectly reasonable language in which to write a monad introduct
by rntz 11y ago
It's true that you don't need to know Haskell in order to learn about monads, but Haskell is a perfectly reasonable language in which to write a monad introduction.
Haskell is good for learning about monads for the same reasons monads tend to be heavily used in Haskell, but not in other languages. Monads are both part of Haskell's standard library, and have very useful special syntax (do-notation). Writing out monadic code explicitly gets to be a huge pain when using monads in another language. Typeclasses also make it convenient & easy to write code that's generic over any monad.
- imh 11y ago>Writing out monadic code explicitly gets to be a huge pain when using monads in another language. Couldn't any other language have a syntax like thing.do(\x -> other thing(x)).do( \x -> yet another thing(x)).do( a function).do( more stuff).do( etc) And then replace "\x -> whatever" with the local language's lambda syntax. The only time you get the painful nested parens is if you want thing.do( \x -> f(x).do( \y -> g(x,y))) It's not too terribly bad.
- ash 11y agoLike JavaScript Promises?