它已经ratling在我的大脑一段时间。

我已经有一些调查对编纂者/Flex/百程之类的东西但我永远不会找到了一个很好的参考,谈到了详细的关于"解析叠",或如何去实现一个。

任何人都不会知道的良好的参考,我可以抓起来吗?

编辑:我赞赏所有编译器引用,并且我会得到的一些书籍列出的,但是我的主要重点是分析本身并没有你用它做什么之后。

有帮助吗?

解决方案

这是为了应对移民及多文化事务部的答案,你认为正确的答案。虽然这是个不错的回答状态,分析相关的自动机的理论,我觉得有些误会这里。

  • 首先, 有限的自动机状态 只有能够认识到经常语言(例如regular expressions).为了承认方面无语言需要你 下推自动机, ,这是更强大。看看 http://en.wikipedia.org/wiki/Automata_theory#Classes_of_automata 更多的自动机和他们的关系到不同种类的语言。

  • 其次, 是不同的 认识到.认识到一串只是告诉你这是否符串在的语言产生的你语法。目的的分析是产生一个具体的语法树这既是困难和通常更为有用。

有各种各样的分析方法,所以很难给你一个具体的基准,这将告诉你什么是你需要知道...在一般情况下,应理解之间的差异 上而下分析下而上分析.但这里有一个概览的几个常用的技术通过解析发电机的情况下你有兴趣:

编辑: 对不起,我撞到这个问题,我再次就发生在两个优秀的员额的描述之间的关系 经常语言和有限的自动机, 下文免费的语言和推动下自动机.可能是有趣的人查找这个问题。

其他提示

龙书!我最近用它来编写一个编译器(用PHP!)来处理用RTF编写的模板文件的处理语言......

解析器基本上是一个有限状态机,也就是一个有限自动机。你应该找一本关于计算理论的书,它讨论有限自动机,以及常规语言,无上下文语言等等。

尝试亚马逊

编译器构造只是一个很好的例子

查看“关于Pascal编译器的Brinch Hansen”..它写于1985年,但去年我用它编写了一个关于编译器的课程(Per Brinch Hansen ofcourse。),发现它对编译器设计非常简洁和有用

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top