State machine 如何构建LR状态机解析器?

State machine 如何构建LR状态机解析器?,state-machine,parser-generator,State Machine,Parser Generator,我想尝试创建一个LR解析器生成器。有人知道一个好的(免费的)资源描述如何从语法创建状态机表吗

我想尝试创建一个LR解析器生成器。有人知道一个好的(免费的)资源描述如何从语法创建状态机表吗然而,我想推荐一本书,你几乎没有比get更好的了。

我遇到的最好的资源是:


也许你觉得语法很有用。这是一个免费的.NET解析器生成器。我在这方面有一些经验,而且很好。您可以尝试并研究它的代码。
显而易见的答案是Aho/Ullman/Ravi的标准编译器文本


它有完整的解析章节。这本书不是免费的,但它值每一分钱。如果你要构建解析器或其他类似编译器的工具,如果你没有这本书,你简直是疯了。

我真的应该拆开它买一本(看看用过的价格,我可能会这么做),但我经常很吝啬。此外,把钱花在“毫无用处但很酷的代码黑客”上是一种亵渎,绝对不是“毫无用处”。阅读龙之书可以教你很多编程知识。有了对LR解析器的良好理解,您将能够更好地掌握新语言并设计其他语言,例如用于特定任务的DSL。我已经编写了一个解析器生成器(递归下降),并在许多项目中使用了这些语言。“完全无用”的部分是实现语言将是MySQL!看起来已经绝版了:(.如果我看到一份副本,我会看一看。该网站有一个PDF格式的第一版。但它与龙的关系不大。我很喜欢人们在没有说明他们的问题的情况下否决答案…我很感谢反馈