RUBY的编译器和口译员

时间:2011-04-26 22:48:07

标签: ruby-on-rails ruby compiler-construction compilation interpreter

编程语言是否有可能有解释器和编译器? 如果有,怎么样?

**我认为RUBY有编译器和解释器**

感谢

2 个答案:

答案 0 :(得分:4)

当然,你可以同时拥有两者。除了Java,Python和现在Ruby的明显示例之外,如果您真的想要,可以为其中任何一个编写本机编译器。我认为那里有一个执行不佳的Ruby编译器。

相反,你也可以为C写一个翻译,我想有几个。

有一些技术上的原因导致像Ruby这样的动态语言难以编写编译器并且使用C语言的解释器失败了在像Ruby这样的语言上编写C语言的主要优点。这并不意味着它无法完成。

简而言之,您可以为任何语言和平台(本机或VM)编写编译器或解释器,或两者兼而有之。

答案 1 :(得分:1)

某些语言可以编译为特定于平台的运行时可执行文件并进行解释。例如,Ruby可以由多个解释器,本机ruby,ree等解释,也可以由JRuby“编译”为本机java代码(这不是本机可执行文件)。