Practicing Haskell and FP