Automatic testing of Haskell programs