[Haskell-beginners] Confused by type constraints