如果我想创建自己的语言有什么工具可以帮助我吗?我听说过yacc,但我想知道如何在语言中实现我想要的功能.
密切相关的问题(通过搜索[compiler]
stackoverflow获取):
在解析器,解释器和编译器上学习资源
学习编写一个编译器
构建一个简单的解释器
...
类似主题(来自同一搜索):
引导一种语言
我们应该知道多少编译器?
用自己的语言编写编译器
...
编辑:我知道stackoverflow相关的问题搜索不是我们想要的,但是我们真的需要这个主题的第n次迭代吗?咩!
我推荐的第一个工具是龙书.这是构建编译器的参考.设计语言并非易事,实现它更加困难.龙书帮助那里.本书甚至参考了标准的unix工具lex和yacc.gnu等效工具称为flex和bison.它们都生成词法分析器和解析器.还有更多用于生成词法分析器和解析器的现代工具,例如对于java有ANTLR(我还记得javacc和CUP,但我自己只用了ANTLR).事实上,ANTLR结合了解析器和词法分析器以及eclipse插件可供使用,这使得它非常舒适.但要比较它们,你需要的解析器类型,并知道你需要它们,你应该阅读龙书.还有其他一些你需要考虑的事情,比如运行时环境,编程范例,......
如果您已经有某些设计理念,并且需要某个步骤或细节的帮助,那么这些产品可能会更有帮助.