problem 2: haskell