3 ms·
I think it's fairly misleading to think of impure computation as a core part of the `Monad` abstraction in Haskell[0]. Most of the places I use monads in Haskel
by chas 6y ago
I think it's fairly misleading to think of impure computation as a core part of the `Monad` abstraction in Haskell[0]. Most of the places I use monads in Haskell are pure e.g. error handling, parsers, working with DSLs. `IO` is where the impurity lives and the monad abstraction just makes it a bit more fun to use, but it isn't essential to the impurity. Haskell had IO before it had monads. I also feel like the emphasis on the Monad abstraction really sells Functor and Applicative short as they are fantastic abstractions in their own right in addition to being important building blocks for the Monad abstraction.
[0] https://news.ycombinator.com/item?id=20112333 https://news.ycombinator.com/item?id=20112333
- Iceland_jack 6y agohttps://www.reddit.com/r/haskell/comments/eoo16m/base_category_polymorphic_functor_and_functorof/ https://www.reddit.com/r/haskell/comments/eoo16m/base_catego...
- mark_l_watson 6y agoThanks for the link and clarification.