meta data for this page
  •  

This is an old revision of the document!


What is JavaCC 21?

JavaCC 21 is a more advanced version of the legacy JavaCC tool. The current version is the result of a huge amount of restructuring and refactoring with the following main goals:

  • To make the tool much more useful and usable, out of the box
  • To fix a lot of the design flaws of the legacy implementation
  • To clean up the code base such that it is now feasible to add features and, more generally speaking, to turn this into a genuine, active open source development effort.

For those who wish to know the key differences between JavaCC 21 and the legacy JavaCC project, consult this page: Key Differences between JavaCC21 and Legacy JavaCC

Why the Fork? well, here's the history.

Code Injection in JavaCC 21

Using INCLUDE to maintain a grammar in multiple files

Tree Building Enhancements in JavaCC21

Settings from Legacy JavaCC that are not relevant to JavaCC21

JavaCC21 moves towards convention over configuration