JavaCC
| JavaCC | |
|---|---|
| Date de bază
| |
| Versiunea actuală | 7.0.10 (23 noiembrie 2020) |
| sistem de operare | Sisteme de operare cu mediu de execuție Java |
| limbaj de programare | Java |
| categorie | Generator de analizori |
| Licență | Licență BSD |
| https://www.javacc.org | |
JavaCC ( Java C ompiler C ompiler ) este un Lexer și un parser , care în Java este implementat și ca un cod sursă generat de Java și ++ C. JavaCC este open source și publicat în condițiile licenței BSD .
JavaCC funcționează similar cu binecunoscutul program Yacc , dar folosește o metodă diferită pentru analizarea datelor: JavaCC generează un parser LL (k) , în timp ce Yacc generează un parser LALR (1) . Gramatica trebuie să fie structurat un pic diferit decât ar fi cu Yacc.
Programe și biblioteci care utilizează JavaCC intern
- Cadrul motorului de căutare open source Lucene folosește JavaCC pentru a genera lexerul și parserul interogării.
- Motorul de șabloane open source Velocity folosește JavaCC pentru funcțiile sale de parser.
- Instrumentul PMD utilizat pentru analiza statică a codului textelor sursă utilizează JavaCC intern pentru a procesa regulile definite de utilizator.
- API-ul Java al proiectului ontologic Cyc utilizează JavaCC pentru funcțiile sale de analiză.
Vezi si
- JFlex (generator de scaner pentru Java scris în Java)
- SableCC (Compiler-Compiler for LALR (1) -Parser in Java)
- ANTLR (Compiler-Compiler for LL (*) - Parser în diferite limbi țintă)
- Coco / R (Compilator-compilator pentru LL (k) -Parator în diferite limbi țintă)
literatură
- Tom Copeland: Generarea analizelor cu JavaCC . Ediția a II-a. Centennial Books, Alexandria, 2009, ISBN 978-0-9762214-3-2 .
- Anthony J. Dos Reis, Laura L. Dos Reis: construcția compilatorului folosind Java, JavaCC și Yacc . Prima ediție. John Wiley & Sons, 2012, ISBN 978-0-470-94959-7 .
Dovezi individuale
- ↑ https://github.com/javacc/javacc/releases/tag/javacc-7.0.10
- ↑ JavaCC Anunță lista de corespondență pe Java.net. (Nu mai este disponibil online.) Arhivat din original la 11 aprilie 2016 ; accesat pe 9 septembrie 2013 . Informații: linkul arhivei a fost inserat automat și nu a fost încă verificat. Vă rugăm să verificați linkul original și arhivă conform instrucțiunilor și apoi eliminați această notificare.
- ↑ Documentația pachetului Apache Lucene. Adus pe 9 septembrie 2013 .
- ^ Proiectul Apache Velocity - Instrumente necesare. Adus pe 9 septembrie 2013 .
- ↑ Personalizarea PMD - Cum se scrie o regulă PMD. Adus pe 9 septembrie 2013 .