Haskell: problem 9