有谁知道包含典型编译器课程的在线课程/大学讲座吗?我有计算理论,但不幸的是,我的学校没有提供编译器构建课程。自学的编译器课程/良好的入门编译器书籍?
我知道那里有讲座;我希望为特别好的产品提供建议。
另外,是否有书籍的新手到外地?至少,除龙书以外的东西。初学者水平很好,我知道市场上有很多中级先进的文本。
谢谢!
有谁知道包含典型编译器课程的在线课程/大学讲座吗?我有计算理论,但不幸的是,我的学校没有提供编译器构建课程。自学的编译器课程/良好的入门编译器书籍?
我知道那里有讲座;我希望为特别好的产品提供建议。
另外,是否有书籍的新手到外地?至少,除龙书以外的东西。初学者水平很好,我知道市场上有很多中级先进的文本。
谢谢!
编辑:在这种情况下,SO的问题并没有得到封闭,做检查这duplicate SO posting它回答了一个更详尽的方式的问题。
麻省理工学院的开放式课程网站一对夫妇ressources的:
6.035 Computer Language Engineering
6.827 Multithreaded Parallelism: Languages and Compilers
可能沿着你脑子里什么线路前者。它还包括一些讲座的视频。
后者...肯定是研究生水平的课程。与传统的编译链相比,重点更多地放在多线程上。 (但是为了有效地对代码线程进行块化,必须对原始程序中表达的语义有一个体面的把握......)
有人从那份重复的SO帖子中得到答案吗?由于审核原因,它已被删除。 – TravisG 2012-04-04 16:34:19
看看这个http://scheme2006.cs.uchicago.edu/11-ghuloum.pdf)
这是一个非常基本的介绍,你知道,现代编译器真的有点复杂。
你可以看看这个课程:http://ecee.colorado.edu/ecen4553
课程信息
高级编程语言一样 的Python使编程变得轻而易举,但 他们是如何工作的?现代计算机的Python和机器 指令之间有很大差距 。 了解如何将Python程序 一路转换为Intel x86程序集 语言。
大多数编译课程教导在一个时间编译器的一个相 ,如 解析,语义分析,并 寄存器分配。 这个方法的问题是难以理解整个编译器如何将 合在一起以及为什么每个阶段都是按照原样设计的。相反,每个我们实现一个连续的 Python语言的更大的子集。 第一个子集是一个很小的 算术语句语言,而 当时我们完成语言 包括对象,继承和 一等功能。
先决条件:流利至少一种编程语言(Java,C,C++, Python等)。学生们将在Python中编程很多 ,但之前的 不需要Python的知识。 该课程将以崩溃开始 课程关于Python和Python是最容易学习的语言之一 。以前的 知识的汇编语言 帮助,但不是必需的。
重复(很多次)http://stackoverflow.com/questions/1669/learning编写一个编译器等 – cletus 2009-10-13 06:34:41
我从来没有见过比龙书更好的编译解释。你可以做得更糟,而不是坚持下去。 – 2009-10-22 01:38:06
我不同意。我认为Andrew Appel在{ML,Java,C}中的现代编译器实现比Dragon书更好。龙书作为参考很好,但我认为如果你正在寻找纯粹的自我导向学习,Modern Compiler Implementation是一个更加完整和连贯的工作。 – Gian 2009-10-26 10:53:20