Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I read the book a while back and it is absolutely fantastic. What I understand about monads, I learnt it from this book (no other exposition of monads ever made sense to me), and I particularly like his progression functors -> applicative functors -> monads. I think it's the clearest way to proceed (certainly helped me a lot anyways)


When I teach Haskell, I like to take a diversion from Applicatives to Monoids before going to Monads.

Understanding join is pretty valuable for understanding Monads too.


You can do Applicative -> Alternative and study Alternatives as Monoids of Applicatives and then lay on the difference between (<*>) and (<>) as producing a seminearring!

And then go study Monads because why not. They're kind of cool, too.


Actually you just reminded me that I need to explain sums and products in terms of a seminearring.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: