[Haskell-cafe] operating on nested monads