JavaCC ( Java Compiler Compiler ) ist ein Open-Source -Parsergenerator und lexikalischer Analysatorgenerator , der in der Programmiersprache Java geschrieben ist . [ 2 ]
JavaCC ähnelt yacc insofern, als es einen Parser aus einer formalen Grammatik in EBNF- Notation generiert. Im Gegensatz zu yacc generiert JavaCC jedoch Top-Down-Parser. JavaCC kann Entscheidungen basierend auf den nächsten k Eingabetoken auflösen und somit LL( k ) -Grammatiken automatisch verarbeiten; mithilfe von „Lookahead-Spezifikationen“ kann es auch Entscheidungen auflösen, die einen unbegrenzten Lookahead erfordern. JavaCC generiert außerdem lexikalische Analysatoren ähnlich wie lex . Der zugehörige Baumgenerator JJTree konstruiert seine Bäume von Bottom-Up.
JavaCC ist unter einer BSD-Lizenz lizenziert .
Geschichte
1996 veröffentlichte Sun Microsystems einen Parsergenerator namens Jack . Die Entwickler von Jack gründeten daraufhin die Firma Metamata und benannten Jack in JavaCC um. Metamata wurde später Teil von WebGain. Nach der Einstellung des Betriebs von WebGain wurde JavaCC an seinen heutigen Standort übertragen.
Verwendung
Mit JavaCC erstellte Software umfasst:
Siehe auch
Referenzen
- ^ „ÄNDERUNGEN IN VERSION 7.0.10“ . Abgerufen am 14.05.2021 .
- ^ Enseling, Oliver (29.12.2000). „Erstellen Sie Ihre eigenen Sprachen mit JavaCC“ . JavaWorld . Abgerufen am 2.01.2020 .