[Haskell] Seemingly impossible Haskell programs