Генератор парсеров ISPA предназначен для работы с контекстно-свободными языками. Инструмент ориентирован на статическую генерацию кода без зависимостей в рантайме. Архитектура проекта является самоприменимой: собственный DSL генератора позволяет описать его синтаксис.
Лексер использует технологию TDFA, которая позволяет захватывать данные непосредственно во время обхода таблицы. Это решение автоматизирует построение конкретных и абстрактных синтаксических деревьев (CST и AST) без необходимости повторного разбора текста.
Парсер реализует алгоритм LL(k) с возможностью будущего расширения до LL(*). Система поддерживает автоматическое построение AST, включая рекурсивные узлы, и позволяет внедрять семантические действия и обработку ошибок непосредственно в грамматику.
В синтаксисе ISPA символ '@' обозначает точки захвата, '{}' — семантические действия, а префикс '#' используется для объявления локально ограниченных правил. Такой подход позволяет избежать засорения глобального пространства имен.






