
* 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! John

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.
participants (2)
-
Derek Elkins
-
John MacFarlane