A JavaCC (az angol Java Compiler Compiler rövidítése) egy nyílt forrású szintaktikai elemző és lexikális elemző generátorprogram a Java programozási nyelv számára. A JavaCC hasonlít a yacc elemzőre annyiban, hogy egy elemzőt állít elő egy formális nyelvtani leírásból, ahol a nyelvtan kiterjesztett Backus–Naur formában (EBNF jelölésben) állhat, ám ez Java forráskódot generál. A yacc-al ellentétben azonban a JavaCC felülről lefelé haladó elemzőket generál, ami az LL(k) nyelvtanok osztályára korlátozza a használható nyelvtanokat, tehát balrekurzió a nyelv leírásában nem használható. A JavaCC még lexikai elemzőket is képes előállítani a lex-hez hasonlóan. A hozzá tartozó faépítő program, a JJTree, felépíti az elemzési fákat, alulról felfelé haladó módon.
A JavaCC a BSD licenc alá tartozik.
Története
1996-ban a Sun Microsystems kibocsájtotta a Jack nevű parser-generátorát. A Jack szoftvert fejlesztő programozók később saját céget alapítottak Metamata néven és a Jack nevét JavaCC-re változtatták. A Metamata ezután beolvadt a WebGain cégbe. Miután a WebGain felfüggesztette a működését, a JavaCC a mostani helyére került.
Felhasználása
Néhány szoftver, amelyben a JavaCC által gyártott elemzőket alkalmaznak (a lista nem teljes):
Jegyzetek
Források
Kapcsolódó szócikkek
Fordítás
Ez a szócikk részben vagy egészben a JavaCC című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.