Pull to refresh

Comments 4

Не вдавался в сорцы.

Главный вопрос: поддерживает все регулярные грамматики или это аналог PEG-а?

Да, QapDSLv2 полностью поддерживает все регулярные грамматики, поскольку регулярные грамматики — это самый простой класс формальных грамматик, и их поддержка — базовая возможность любого генератора парсеров.

QapDSLv2+QapGen — это гораздо более мощный и гибкий инструмент, чем PEG. В отличие от PEG, который вроде является формализмом для однозначного синтаксического анализа с приоритетным выбором, QapDSLv2 позволяет описывать сложные контекстно-свободные конструкции, интегрируя грамматику с построением AST, сериализацией и трансформациями.

Вы не поняли вопрос. Всё что можно описать в ANTL4

  1. Можно описать в этом?

  2. Оно будет асимптотически так же эффективно по разбору?

Да, всё, что можно описать в ANTLR, можно описать и в QapDSLv2.

По производительности оба инструмента примерно сопоставимы, но в моих тестах с парсингом JSON`а QapDSLv2 быстрее чем ANTLR в 3.52 раза.

Sign up to leave a comment.

Articles