首选语言:C/C++,Java和Ruby.
我正在寻找一些有用的书籍/教程,如何编写自己的编译器只是为了教育目的.我最熟悉C/C++,Java和Ruby,所以我更喜欢涉及这三者之一的资源,但任何好的资源都是可以接受的.
我遇到了这个问题:使用Turbo Pascal编写编译器
我很好奇是否有任何教程或参考资料解释如何创建一个简单的C编译器.我的意思是,如果它让我达到理解算术运算的水平就足够了.在阅读肯·汤普森的这篇文章后,我变得非常好奇.写一些理解自己的东西的想法似乎令人兴奋.
为什么我提出这个问题而不是问Google?我试过谷歌和帕斯卡一个是第一个链接.其余的似乎没有相关性,并且增加了......我不是CS专业(所以我仍然需要了解所有这些工具,如yacc),我想通过这样做来学习这一点,并希望有更多经验的人总是比谷歌更擅长这些事情.我想阅读一些与上面列出的文章相同的文章,但至少突出了构建一个简单的C编译器的自举阶段.
另外,我不知道最好的学习方法.我是否开始用C或其他语言构建C编译器?我是否编写C编译器或其他语言?一旦我有方向去探索,我觉得这样的问题会得到更好的回答.有什么建议?
有什么建议?