是否有一种在线算法可以将某些语法转换为最有效的解析器?
例如:SLR/LR(k)如k>=0
最佳答案
对于你正在讨论的语法类(xLR(k)),无论如何它们都是线性时间,如果你必须检查每个字符,那么不可能做亚线性时间。
如果你坚持优化解析时间,你应该得到一个非常快的LR解析引擎。 LRStar 曾经是这个话题的猫喵,但其背后的人从“我想要免费”的世界中获得了零奖励,并将其所有实例从网上撤下。你可以选择 Bison。
坦率地说,大部分解析时间将取决于解析器处理单个字符的速度,例如词法分析器。首先调整它,您可能会发现不需要调整解析器。
关于parsing - 将语法转换为最有效的解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62784447/