Based Constructor of Useful Parsers (CUP)
The Java(tm) based Constructor of Useful Parsers
(CUP for short) is a
system for generating LALR parsers from simple specifications. It
serves the same role as the widely used program YACC, and in fact
offers most of the features of YACC. However, CUP is written in
Java, uses specifications including embedded Java code, and produces parsers
which are implemented in Java. To learn more about CUP, and how
to build parsers with it, see the User's Manual located
CUP was created by
Scott Hudson who is part of the
Graphics Visualization and Usability Center and the
College of Computing
CUP is currently in alpha-test release.
The current version (v0.9e) has been updated to work with the
JDK 1.0 compiler, and contains an important bug fix since v0.9d.
Please be aware that the system has not been extensively tested, and you
should use it at your own risk.
However, it has been used to implement itself, and to create a
Java parser which was able to successfully parse the full Java alpha2
release and as of 3/30/96 we know of no bugs. (A revision history can be
We would greatly
appreciate comments and bug reports (which can be sent to
However, we cannot offer any support at this time, and time available
to us to pursue bug fixes is very limited.
A compressed tar file containing the Java source for the system is available
README file for installation details.
You can also view the Java source directly starting
Java and HotJava are
trademarks of Sun Microsystems, Inc.,
and refer to Sun's Java programming language and HotJava browser
CUP is not sponsored by or affiliated with Sun Microsystems, Inc.
Sat Mar 30 1996