标签
Yantra 是一个开源的 LALR(1) 解析器生成器和编译器编译器,使用 C++23 编写,集成了词法分析器、Unicode 支持、AST 构建器和自顶向下 AST 遍历器,支持合并的单文件输出和可直接集成的 hpp/cpp 代码生成。
一份技术报告,介绍了用于生成紧凑型LR(1)解析器的APLR(1)算法。该算法比现有的IELR(1)算法更简单、功能更强,并且支持用于GLR解析的非确定性/歧义文法。