JavaCC (Java Compiler Compiler) は、オープンソースのJava向けのパーサジェネレータである。
JavaCCは、yaccと同様に拡張BNFを入力としてとる。yaccとの違いは生成されるパーサがJavaのソースコードだということである。
しかしながら、yaccとは異なり、JavaCCはトップダウンのパーサを構築する、そのため、LL (K) クラスの文法にしか対応していない(厳密にいうと左再帰は使えない)。
JavaCCに付属するJJTreeというツールを利用することで、構文木を生成することができる。
JavaCCはBSDライセンスが適用されている。
歴史
1996年に、サン・マイクロシステムズからJackというパーサ生成ツールが公開された。
Jackの開発者たちはMatamataという会社を設立し、ツールの名前をJavaCCに改定した。
その後、MatamataはWebGainの一部となったが、WebGainは活動を停止し、JavaCCは現在のサイトに移管された。
関連項目
外部リンク