JavaCC
Разработчик(и) | Оракул |
---|---|
Стабильная версия | 7.0.10 / 23 ноября 2020 г [1] |
Репозиторий | github |
Платформа | Виртуальная машина Java |
Тип | генератор парсера/сканера |
Лицензия | БСД |
Веб-сайт | javacc |
JavaCC ( Java Compiler Compiler ) — с открытым исходным кодом, генератор парсера и генератор лексического анализатора написанный на языке программирования Java . [2]
JavaCC похож на yacc тем, что генерирует анализатор формальной грамматики, записанной в нотации EBNF . Однако, в отличие от yacc, JavaCC генерирует анализаторы сверху вниз. JavaCC может принимать решения на основе следующих k входных токенов и, таким образом, может LL( k ) автоматически обрабатывать грамматики ; используя «спецификации прогнозирования», он также может принимать решения, требующие неограниченного просмотра вперед. JavaCC также генерирует лексические анализаторы аналогично lex . Сопутствующий ему построитель деревьев, JJTree, строит деревья снизу вверх.
JavaCC лицензируется по лицензии BSD .
История
[ редактировать ]В 1996 году компания Sun Microsystems выпустила генератор синтаксического анализатора под названием Jack . Разработчики, ответственные за Джека, создали собственную компанию под названием Metamata и изменили имя Джека на JavaCC. Метамата в конечном итоге стала частью WebGain. После того, как WebGain прекратила свою деятельность, JavaCC был перенесен в свое нынешнее место.
Использование
[ редактировать ]Программное обеспечение, созданное с использованием JavaCC, включает в себя:
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «МОДИФИКАЦИИ В ВЕРСИИ 7.0.10» . Проверено 14 мая 2021 г.
- ^ Энселинг, Оливер (29 декабря 2000 г.). «Создавайте свои собственные языки с помощью JavaCC» . JavaWorld . Проверено 02 января 2020 г.
Внешние ссылки
[ редактировать ]- Официальный сайт
- Компилятор компилятора Java (JavaCC) — генератор синтаксического анализатора Java
- Новый официальный сайт JavaCC к апрелю 2017 г.
- Учебное пособие по JavaCC
- Часто задаваемые вопросы по JavaCC
- Книга JavaCC - Генерация парсеров с помощью JavaCC. Архивировано 11 марта 2014 г. в Wayback Machine.