JavaCC
Erscheinungsbild
JavaCC | |
---|---|
Basisdaten
| |
Aktuelle Version | 5.0 (31. August 2009) |
Betriebssystem | Betriebssysteme mit Java-Laufzeitumgebung |
Programmiersprache | Java |
Kategorie | Parser-Generator |
Lizenz | BSD-Lizenz |
javacc.java.net |
JavaCC (Java Compiler Compiler) ist ein Lexer- und Parser-Generator, der in Java implementiert ist und Java-Code erzeugt. JavaCC ist Open Source und unter den Bedingungen der BSD-Lizenz herausgegeben.
JavaCC funktioniert ähnlich wie das bekannte Programm Yacc, benutzt aber ein anderes Verfahren zum Parsen der Daten: JavaCC erzeugt einen LL(k)-Parser, während Yacc einen LALR(1)-Parser erzeugt. Die Grammatik muss also etwas anders strukturiert sein, als das bei Yacc der Fall wäre.
Siehe auch
Ähnliche Programme
- JFlex (in Java geschriebener Scanner-Generator für Java)
- SableCC (Compiler-Compiler für LALR(1)-Parser in Java)
- ANTLR (Compiler-Compiler für LL(*)-Parser in verschiedenen Zielsprachen)
- Coco/R (Compiler-Compiler für LL(k)-Parser in verschiedenen Zielsprachen)
Programme, die intern JavaCC verwenden
- Das Open-Source Suchmaschinen-Framework Lucene nutzt JavaCC zur Generierung des Lexers und des Query-Parsers.
- Die Open-Source Template-Engine Velocity greift für seine Parserfunktionen auf JavaCC zurück.[1]
- Das Java-API des Ontologie-Projekts Cyc greift für seine Parserfunktionen auf JavaCC zurück.
Weblinks
- Offizielle Webpräsenz
- Artikel in JavaWorld
- Kapitel 1 eines geplanten Tutorials von Theodore S. Norvell (University of Newfoundland)
- Einführung in JavaCC
Literatur
- Tom Copeland: Generating Parsers with JavaCC. 2. Auflage. Centennial Books, Alexandria, 2009, ISBN 0-9762214-3-8.
- Daniel McFlynn, Peter F. Weissman: Using JavaCC and SableCC. 1. Auflage. 4UPress, 2004, ISBN 0-7481-3298-2(?!).
- Andrew W. Appel, Jens Palsberg: Modern Compiler Implementation in Java. 2. Auflage. Cambridge University Press, 2002, ISBN 0-521-82060-X.
Einzelnachweise
- ↑ The Apache Velocity project - Required Tools. Abgerufen am 12. September 2012 (englisch).