Haskell version using megaparsec