4.3 CUP

CUP [Hudson et al. 1996] is a yacc look-alike implemented in Java. It constructs a parser class in Java. In the current version 0.10k error recovery seems to work correctly.

Unlike yacc , however, CUP has a fairly bizarre input syntax and requires the scanner to pass specific Symbol objects to the recognizer which may not be reused.