RE: [Haskell-cafe] Explaining monads