[Haskell-beginners] monad transformers and laziness