Я создал разбор JavaScript DSL с именем Chevrotain .
Источник: https://github.com/SAP/chevrotain
Онлайн площадка: http://sap.github.io/chevrotain/playground/
Это , а не комбинатор Парсера, такой как Ирония, но он очень похож
так как он позволяет "определить грамматику синтаксического анализа с использованием синтаксиса JavaScript"
без фазы генерации кода.
Использование его похоже на «ручное построение» рекурсивного приличного парсера,
только без большей части головной боли, такой как:
- Создание функции Lookahead (решение, какую альтернативу выбрать)
- Автоматическое восстановление после ошибок.
- Обнаружение левой рекурсии
- Обнаружение неоднозначности.
- Информация о местоположении.
- ...
, поскольку Chevrotain обрабатывает это автоматически.