怎么开始动手自己写一个编译器,编译器的理论学习该从何处下手?

2017 年 7 月 3 日
 pythonee
当初不好好学习,基础性的东西还是太少,想补回来
现在还是想 from scratch 的学一下,想实现把一份源代码到可执行文件串起来
不知各位有什么好的学习路径,有哪些好的视频或教学系列吗
8890 次点击
所在节点    程序员
29 条回复
neoblackcap
2017 年 7 月 3 日
推荐 18 楼的书,不过我觉得《自制编译器》还是省略了一部分,比如他们是用 JavaCC 跳过了手写 parser 这些内容,所以我建议读《编译器设计》,很不错的一本书。
araraloren
2017 年 7 月 3 日
mark 一下,看起来挺有意思的。。
halfcoder
2017 年 7 月 3 日
感觉你需要的不只是一个编译器,而是一整套:
《自制编程语言》 前桥和弥 (Maebasi Kazuya)
wshcdr
2017 年 7 月 3 日
关注一下
exiahan
2017 年 7 月 3 日
当然是看龙虎豹啦( ・ิω・ิ)(雾,其实是龙虎鲸),不过我感觉虎好点,龙看得话太抽象了,而且中文版翻译很渣。另外有本叫编译器设计( compiler engineer )也很不错,和虎的讨论很像但是讲的更细。
exiahan
2017 年 7 月 3 日
@exiahan 写错了书名,编译器设计( Engineering a compiler )
caokeck
2017 年 7 月 3 日
可以先看 sicp,然后撸个解释器
kuno1
2017 年 7 月 4 日
http://www.craftinginterpreters.com/

Java 和 C 的两个版本,来自 google Dart 语言作者 Bob Nystrom

代码在
https://github.com/munificent/craftinginterpreters
laihaotao
2017 年 7 月 4 日
给一个我的编译器课的项目地址: https://github.com/LAIHAOTAO/COMP6421/
这是我老板的课,上得还挺好的,作业是撸一个 compiler。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/372589

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX