Интересная находка!На самом деле я не использовал его, поэтому комментарии основаны на прочтении документации.
Редизайн, так что лексический анализ выполняется отдельно от синтаксического анализа, сразу же кажется полезным.В частности, он может упростить такие операции, как обработка нескольких или вложенных исходных файлов.Механизм yywrap()
на базе Lex не идеален.То, что он избегает всех глобальных переменных и имеет тщательное выделение памяти, и контроль освобождения должен рассчитывать в его пользу (то, что он позволяет выбор распределителя и освобождения, тоже очень помогает - по крайней мере, для сред, в которых я работаю, где распределение памяти всегда является проблемой).
Хорошей идеей является переосмысление того, как организованы правила и как идентифицируются терминалы.
В целом, это выглядит как хорошо продуманный редизайн Bison.
Находится в свободном доступе в соответствии с указанными веб-страницами.