As recently mentioned, I’ve been working on improving the performance of my parser library. Now that I’m done picking all the low-hanging fruits, performance wise, I have decided to release the next version of hadrian, 0.2. This version contains a bunch of bugfixes and a few new features, but mainly it’s just a lot faster than 0.1.
Last time I wrote about it throughput was around 1 MB of input per second, discounting I/O, which was already a considerable improvement over 0.1. Now, it is around 1.5 MB per second. If you include I/O overhead that is around 1.2 MB per second on my machine. That’s actually faster than ANTLR, at least according to the benchmarks I used for my thesis.
Of course it doesn’t matter how fast it is. Even though it really is the world’s most ass-kickingest parser, people are unlikely to use it until I write some more documentation. Bugger.