One of the pitfalls of writing a JavaCC book is that since it's an open source project I'm tempted to fix any bugs that pop up. Case in point: I just fixed a small bug which was preventing JavaCC from generating parsers which could be used with JDK 1.1, 1.2, or 1.3.
This is great, but it slows down progress on the book itself. Ah well. Fortunately, JavaCC is a pretty mature project and there aren't really many bugs in it to fix. There are some performance improvements that could be had though, I think; for example, the
JDK_VERSION option results in using some JDK 1.5 constructs but could be expanded to other areas - like using StringBuilder vs StringBuffer. Maybe I can work on that as book time allows... we'll see.