JavaCC (Java Compiler Compiler) — компілятор компіляторів і генератор лексичних аналізаторів з відкритим кодом для мови Java. JavaCC подібний до yacc у тому, що генерує синтаксичний аналізатор з формальної граматики, записаної в EBNF, але на виході генерується текст програми на Java. На відміну від yacc, однак, JavaCC генерує синтаксичний аналізатор за схемою згори-вниз, що обмежує його класом граматики LL-аналізаторів (зокрема, лівостороння рекурсія не може використовуватись). JavaCC також генерує лексичний аналізатор у манері, подібній до lex. Генератор дерев, що використовується разом з ним, JJTree, будує свої дерева зверху вниз.

JavaCC
Тип parser/scanner generator
Стабільний випуск 5.0 (August 31, 2009)
Платформа Java Virtual Machine
Мова програмування Java
Ліцензія BSD
Репозиторій github.com/javacc/javacc
Вебсайт java.net/projects/javacc

JavaCC ліцензовано ліцензією BSD.

Історія ред.

В 1996 Sun Microsystems випустила генератор синтаксичних аналізаторів під назвою Jack. Розробники, відповідальні за Jack, створили власну компанію під назвою Metamata і змінили назву Jack на JavaCC. Metamata, зрештою, стала частиною WebGain. Згодом WebGain закрила свої операції, і JavaCC було перенесено на теперішнє місце.

Використання в існуючих програмах ред.

Наступні програмні продукти було створено з використанням JavaCC:

Див. також ред.

Зовнішні посилання ред.