Reflecting on what was learned from writing this book
I learned some useful things from writing this book. As an old-school C and UNIX person, this was not a given for me, but Java is very suitable for writing compilers at this point. Sure, Andrew Appel might have published Modern Compiler Implementation in Java in 1997, and other compiler-writing books in Java exist. These might be great, but how many compiler writers won’t consider using Java to this day because Java is not a systems programming language, or because its official compiler construction tools are non-standard? Using a standard lex/YACC toolchain for Java makes it more interoperable with compiler code bases created for other languages.
I want to express my appreciation to the Byacc/J maintainer Tomas Hurka for accepting and improving my static import
patch to make Byacc/J play more nicely with Jflex and similar tools (including my Merr tool, as covered in Chapter 4, Parsing) that generate yylex()
or yyerror...