[Haskell-beginners] Effective use of nested Monads