JavaCC
JavaCC (Java Compiler Compiler) ist ein Lexer- und Parsergenerator, der in Java implementiert ist und als Ausgabe Java- und C++-Quellcode erzeugt.[2] JavaCC ist Open Source und unter den Bedingungen der BSD-Lizenz herausgegeben.
JavaCC | |
---|---|
Basisdaten | |
Aktuelle Version | 7.0.10 (23. November 2020[1]) |
Betriebssystem | Betriebssysteme mit Java-Laufzeitumgebung |
Programmiersprache | Java |
Kategorie | Parsergenerator |
Lizenz | BSD-Lizenz |
www.javacc.org |
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 dies bei Yacc der Fall wäre.
Programme und Bibliotheken, die intern JavaCC verwenden
- Das Open-Source Suchmaschinen-Framework Lucene nutzt JavaCC zur Generierung des Lexers und des Query-Parsers.[3]
- Die Open-Source Template-Engine Velocity greift für seine Parserfunktionen auf JavaCC zurück.[4]
- Das zur statischen Codeanalyse von Quelltexten genutzte Werkzeug PMD verwendet zur Verarbeitung der benutzerdefinierten Regeln intern JavaCC.[5]
- Das Java-API des Ontologie-Projekts Cyc greift für seine Parserfunktionen auf JavaCC zurück.
Siehe auch
Literatur
- Tom Copeland: Generating Parsers with JavaCC. 2. Auflage. Centennial Books, Alexandria, 2009, ISBN 978-0-9762214-3-2.
- Anthony J. Dos Reis, Laura L. Dos Reis: Compiler Construction Using Java, JavaCC, and Yacc. 1. Auflage. John Wiley & Sons, 2012, ISBN 978-0-470-94959-7.
Einzelnachweise
- https://github.com/javacc/javacc/releases/tag/javacc-7.0.10
- JavaCC Announce Mailinglist on Java.net. (Nicht mehr online verfügbar.) Archiviert vom Original am 11. April 2016; abgerufen am 9. September 2013 (englisch). Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- Apache Lucene package documentation. Abgerufen am 9. September 2013 (englisch).
- The Apache Velocity project – Required Tools. Abgerufen am 9. September 2013 (englisch).
- Customizing PMD – How to write a PMD rule. Abgerufen am 9. September 2013 (englisch).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.