[Haskell-cafe] Re: ANN: Parsec 3.0.0

Derek Elkins derek.a.elkins at gmail.com
Tue Mar 18 13:37:00 EDT 2008

On Thu, 2008-03-06 at 09:31 -0800, John MacFarlane wrote:
> >     * A "compatibility" Text.ParserCombinators.Parsec tree for the old 
> >       Parsec.  It's not perfect, but it should work with most Parsec 2
> >       code.
> A data point: I recompiled pandoc with the new Text.ParserCombinators.Parsec
> compatibility module, and performance is much worse than with
> parsec 2.1 (approximately twice as slow on my standard benchmark).
> That aside, this is a very welcome release!

Yes, a speed hit is currently expected.  I don't believe Paolo Martini
did any performance tuning and I know I didn't so currently using
parsec3 as a parsec2 drop-in is expected to be slower due to more
abstraction/parameterization.  However, one benefit (it should be a
benefit, if not I want to know!) is that you can switch to bytestrings
if possible and that should hopefully itself add quite a boost in speed.

Now that -something- is out there, I intend to see what I can do about
performance and am interested in any examples that run slower than one
would expect.  I have some ideas for improving performance, so hopefully
this will get better in later releases.

More information about the Haskell-Cafe mailing list