JavaCC

JavaCC
Grunnleggende data

Gjeldende  versjon 7.0.10
(23. november 2020)
operativsystem Operativsystemer med Java runtime-miljø
programmeringsspråk Java
kategori Parser-generator
Tillatelse BSD-lisens
https://www.javacc.org

JavaCC ( Java C om spiller C ompiller ) er en Lexer- og parser , som i Java er implementert og som en utgang Java og ++ C generert kildekode. JavaCC er åpen kildekode og publisert under vilkårene i BSD-lisensen .

JavaCC fungerer på samme måte som det velkjente programmet Yacc , men bruker en annen metode for parsing av data: JavaCC genererer en LL (k) parser , mens Yacc genererer en LALR (1) parser . Den grammatikk må være strukturert litt annerledes enn det ville være med YACC.

Programmer og biblioteker som bruker JavaCC internt

  • Open source-søkemotorrammen Lucene bruker JavaCC til å generere lexer og spørringsparser.
  • Open source malmotoren Velocity bruker JavaCC for parserfunksjonene.
  • PMD- verktøyet som brukes til statisk kodeanalyse av kildetekster, bruker JavaCC internt for å behandle de brukerdefinerte reglene.
  • Java API i Cyc ontology- prosjektet bruker JavaCC for parserfunksjonene.

Se også

  • JFlex ( skannegenerator for Java skrevet på Java)
  • SableCC (Compiler-Compiler for LALR (1) -Parser i Java)
  • ANTLR (Compiler-Compiler for LL (*) - Parser på forskjellige målspråk)
  • Coco / R (Compiler-Compiler for LL (k) -Parser på forskjellige målspråk)

litteratur

  • Tom Copeland: Generere parsere med JavaCC . 2. utgave. 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. utgave. John Wiley & Sons, 2012, ISBN 978-0-470-94959-7 .

Individuelle bevis

  1. https://github.com/javacc/javacc/releases/tag/javacc-7.0.10
  2. JavaCC kunngjør postliste på Java.net. (Ikke lenger tilgjengelig online.) Arkivert fra originalen 11. april 2016 ; åpnet 9. september 2013 . Info: Arkivkoblingen ble satt inn automatisk og har ennå ikke blitt sjekket. Vennligst sjekk originalen og arkivlenken i henhold til instruksjonene, og fjern deretter denne meldingen. @1@ 2Mal: Webachiv / IABot / java.net
  3. Apache Lucene pakke dokumentasjon. Hentet 9. september 2013 .
  4. ^ Apache Velocity-prosjektet - Nødvendige verktøy. Hentet 9. september 2013 .
  5. Tilpasse PMD - Hvordan skrive en PMD-regel. Hentet 9. september 2013 .