Strange Loops

No Matter Where You Go, There You Are

Monad Along Now

| Comments

Spent most of yesterday reading up on Monads. I understand how they’re used in Haskell for IO but I wanted to understand more of the theory behind them.

At the highest level, Monads are used to sequence operations and simulate side effects. This allows an imperative programming style to be used. However this only takes place within the context of a Monad. Monads are useful for more than this but I’ve not gotten that far yet.

These were some of the material I worked through (though not all completed except for the 1st one):

In addition to IO, working through the Parsec parser module documentation is also useful. It’s a real application of Monads and helps you connect the theory with the practicalities of working with Monads.