[CUP Logo Image]

CUP Parser Generator for Java

CUP is now maintained and improved at the Technical University of Munich. Please follow this link.

Previous, obsolete content of this page

Scott E. Hudson

Modified by Frank Flannery, C. Scott Ananian, Dan Wang with advice from Andrew W. Appel

Sep 1999 (v0.10k)

User Manual

Copyright Notice, License, and Disclaimer

Source code (CUP 0.10k) (compressed tar) (ZIP archive)

Change log for current version

Known issues with current release (updated 24-Jul-1999)

[CUP 0.10k requires JDK 1.1 or greater.]


FAQs:
  • How do I get the line number where my parse error occurred? Look at how the Grammar for Java below does it. That's canonical.
  • "Symbol recycling detected (fix your scanner)" -- help! Your lexer can't return the same object twice; see the CHANGELOG entry for 0.10j in the CUP distribution for more details.
  • Why haven't there been any releases recently? Because CUP doesn't have any known bugs. Just "feature requests," and they get very low priority if a patch isn't included with your request.

NEW! CUP Grammar for the Java Programming language, versions 1.0 through 1.5. (compressed tar) (ZIP archive) (README)
UPDATED: Grammar extended to handle latest version of the Java 1.5 specification with wildcard parameterizations and JSR-201 constructs (up-to-date with prototype 2.2 of JSR-14 + JSR-201 features). [28-Jul-2003].

See README for previous changes to the grammar and additional details on this release.

My GJ page has more information on "Generic Java", JSR-14, JSR-201, and the proposed Java 1.5.

Archive of old grammar releases: [14-Jul-1998] [10-Feb-1999] [11-Feb-1999] [13-Sep-1999] [27-Oct-1999] [10-Apr-2002] [12-Apr-2002] [13-Apr-2003] [28-Jul-2003]


NEW! CUP/JLex interoperability example. (compressed tar) (ZIP archive)

A mailing list has been set up for announcements of new CUP/JLex releases. To subscribe, send mail to majordomo@cs.princeton.edu with "subscribe jtools" in the body of the message.

Archive of obsolete versions:

Previous version: CUP 0.10j (July 1999)
Previous version: CUP 0.10i (February 1999)
Previous version: CUP 0.10h (February 1999)
Previous version: CUP 0.10g (March 1998)
Previous version: CUP 0.10f (December 1997) [Manual]
Previous version: CUP 0.10e (September 1997) (last version that worked with JDK 1.0)
Previous version: CUP 0.10d (September 1997)
Previous version: CUP 0.10c (July 1997)
Previous version: CUP 0.10b (November 1996)
Previous version: CUP 0.10a (August 1996) [Manual]
Previous version: CUP 0.9e (March 1996) [Manual]

CUP Parser Generator Copyright Notice, License, and Disclaimer

Copyright 1996-1999 by Scott Hudson, Frank Flannery, C. Scott Ananian

Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both the copyright notice and this permission notice and warranty disclaimer appear in supporting documentation, and that the names of the authors or their employers not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission.

The authors and their employers disclaim all warranties with regard to this software, including all implied warranties of merchantability and fitness. In no event shall the authors or their employers be liable for any special, indirect or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of contract, negligence or other tortious action, arising out of or in connection with the use or performance of this software.


This is an open source license. It is also GPL-Compatible (see entry for "Standard ML of New Jersey"). The portions of CUP output which are hard-coded into the CUP source code are (naturally) covered by this same license, as is the CUP runtime code linked with the generated parser.

Java is a trademark of Sun Microsystems, Inc. References to the Java programming language in relation to JLex are not meant to imply that Sun endorses this product.