有没有人知道包含典型编译器课程的在线课程/大学讲座?我有计算理论但不幸的是我的学校没有提供编译器构建课程。
我知道那里有讲座;我希望能为特别好的产品提供建议。
此外,是否有针对该领域新手的书籍?除了龙书之外,至少还有一些东西。初学者水平很好,我知道市场上有很多中级高级文本。
谢谢!
答案 0 :(得分:8)
修改:如果此SO问题未解决,请检查duplicate SO posting以更详尽的方式回答问题。
麻省理工学院OpenCourseWare网站上的几个资源:
6.035 Computer Language Engineering
6.827 Multithreaded Parallelism: Languages and Compilers
前者可能与你想到的一致。它还包括一些讲座的视频 后者......积极参加研究生课程。与传统的编译链相比,重点更多地放在多线程上。 (但是,再次对块代码线程进行有效处理,必须对原始程序中表达的语义有一个正确的把握......)
答案 1 :(得分:5)
您可以查看此课程:http://ecee.colorado.edu/ecen4553
课程信息
高级编程语言 Python使编程变得轻而易举,但是 它们是如何工作的?差距很大 Python和机器之间 现代计算机的说明。 学习如何翻译Python程序 一直到英特尔x86组装 语言。
大多数编译器课程都教授一个阶段 一次编译器,如 解析,语义分析和 注册分配。这个问题 这种方法很难 了解整个编译器是如何适合的 在一起,为什么每个阶段都是 按照它的方式设计。相反,每一个 本周我们陆续实施 Python语言的更大子集。 第一个子集很小 算术语句的语言,和 当我们完成语言的时候 包括对象,继承和 一流的功能。
先决条件:至少流利一次 编程语言(Java,C,C ++, Python等)。学生会做很多事情 用Python编程,但先前 不需要Python的知识。 课程将从崩溃开始 关于Python和Python的课程是其中之一 最容易学习的语言。先 汇编语言的知识 有帮助,但不是必需的。
答案 2 :(得分:4)
看看这个http://scheme2006.cs.uchicago.edu/11-ghuloum.pdf;)
这是一个非常基本的介绍,你知道现代编译器有点复杂。