[Haskell-beginners] Trying to grasp Monads - IO and delayed actions