我正计划学习一种创建自己的编程语言的方法,我想知道编写编译器的语言。 C? C ++?
答案 0 :(得分:2)
Windows Vista和更新版本默认安装了.NET Framework。这反过来又已经为.NET语言提供了一个编译器(最着名的是C#和VB.NET)。它是唯一可以编写高效编译器的语言。其他语言是VBScript和JScript(通过Windows Scripting Host)和批处理文件,所以你真的不想实现更复杂的东西。
根据您要创建的语言的复杂性,C ++实现可能会提供更好的性能。没有冒犯,但你不会给人留下真正知道如何为新语言实现编译器的印象。 Greg Hewgill的链接应该会给你一些起点。问题是,创建一种新的(正式)语言绝不是一项微不足道的任务。是的,这样做的工具是免费的,知识也是如此。但是,在尝试执行此操作之前,您应该已经非常了解要编写编译器或解释器的编程语言。
答案 1 :(得分:-1)
我建议你使用C#; DLR非常适合这个目的。