Introductory fp exercises in haskell