如何开始用C语言构建编程语言?
我真的很想体验一下使用C构建编译器、lexer等的经验,但是我还没有找到一个关于创建编译器、lexer的资源。我读过一本关于使用Ruby创建您自己的语言的书,但它只是讨论了C是如何成为最佳选择,并没有告诉您从哪里开始如何开始用C语言构建编程语言?,c,compiler-construction,programming-languages,C,Compiler Construction,Programming Languages,我真的很想体验一下使用C构建编译器、lexer等的经验,但是我还没有找到一个关于创建编译器、lexer的资源。我读过一本关于使用Ruby创建您自己的语言的书,但它只是讨论了C是如何成为最佳选择,并没有告诉您从哪里开始 他们有没有很好的资源来构建一种使用C语言的语言?我不在乎它有多长,我只想知道如何构建它。编译器/解释器的一个优点是,它们用什么语言编写并不重要。在最后阶段,它们将只是某人机器上的可执行文件 尽管如此,在编写编译器(我目前正在做的事情)时,我使用了几本非常有用的书: 尼古拉斯·沃思
他们有没有很好的资源来构建一种使用C语言的语言?我不在乎它有多长,我只想知道如何构建它。编译器/解释器的一个优点是,它们用什么语言编写并不重要。在最后阶段,它们将只是某人机器上的可执行文件 尽管如此,在编写编译器(我目前正在做的事情)时,我使用了几本非常有用的书:
龙书中有很好的C语言信息和示例!这可能是您正在寻找的,但正如我上面所说的,您编写编译器的语言并不是那么重要。。任何数量的编译器入门书籍都会引导您完成这一过程。它可能不是C语言,但所有的概念都可以翻译成任何语言。C是这些工具的本机语言,它们将完成解析部分。在那之后(最晚),你需要一本已经提到的书。我相信我以前听说过龙书,但我早就忘记了。我一定会在狩猎书籍上查到的。:-)@Chris如果你使用lex和yacc这样的工具,你真的会错过编写完整编译器的经验。我建议第一次就从头开始做。