added Haskell solution for problem 30