Версия 4 ANother Tool для распознавания языков (ANTLR), гибкого генератора лексеров / парсеров. ANTLR4 имеет улучшенный адаптивный алгоритм анализа LL (*), который улучшает более простой алгоритм LL (*), используемый в ANTLR3.
ANTLR расшифровывается как ANother Tool for Language Recognition, мощный генератор синтаксического анализатора для чтения, обработки, выполнения или перевода структурированного текста или двоичных файлов. В своей основе ANTLR использует грамматику с синтаксисом, свободно основанным на Backus – Naur_Form, для генерации синтаксического анализатора. Этот синтаксический анализатор создает легко проходимые деревья синтаксического анализа, которые могут быть далее обработаны пользователем. Упрощенный и мощный дизайн ANTLR позволил использовать его во многих проектах, от оценщика выражений в приложении Apple Numbers 1 sup> до IDEA IDEA IntelliJ 2 sup>.
Основным улучшением между ANTLR4 и ANTLR3 является изменение в алгоритме синтаксического анализа. Этот новый вариант алгоритма синтаксического анализа LL (*), придуманный адаптивный LL (*), переносит все усилия по анализу грамматики на время выполнения, делая ANTLR способным обрабатывать левые рекурсивные правила. Эта новая устойчивость привела к названию «Медовый барсук» , на котором Теренс Парр сказал следующее:
ANTLR v4 называется выпуском медового барсука после бесстрашного героя Сенсация на YouTube, "Безумный Настясский медовый барсук" . Процитирую медового барсука, ANTLR v4 просто наплевать. Это довольно плохая задница. Это займет практически любую грамматику, которую вы дадите ей правильно. И без возврата! *
- Теренс Парр
blockquote>(Чтобы узнать больше, ознакомьтесь с full Разговор !)
Если вы заинтересованы в обучении использованию ANTLR4, хорошим началом будет официальная документация , которая дает отличное представление о самой библиотеке. [ 1127]
Дополнительная литература:
1 sup> Источник из статьи , написанной самим Терренсом Парром.
2 sup> Получено из официального списка Jetbrain программного обеспечения сторонних производителей в IDEA.
3 sup> 24 января 2013 года адрес
www.antlr.org
был изменен с указания на сайт для версии 3 ANTLR (www.antlr3.org
) на версию 4 ANTLR (www.antlr4.org
). Так что вопросы и ответы, которые использовалиwww.antlr.org
, были правильными для ANTLR 3.x до этой даты. Ссылки должны быть обновлены доwww.antlr3.org
для ANTLR 3.x илиwww.antlr4.org
для ANTLR 4.x.