finished Haskell practice