99 haskell problems: http://www.haskell.org/haskellwiki/99_questions/1_to_10