有可能将Python或Perl与Ruby集成吗?
6 个回答
2
你可以用C语言为Ruby写扩展。
也就是说,如果Python有一个C语言的接口,你就可以为Ruby写一个C扩展,利用这个接口。
我对Python的接口一点都不了解,也不知道你想整合多大的部分,但如果不是太复杂,这可能会让你从Ruby中运行Python代码。
7
我所在的学校(乔治亚理工学院),还有布林莫尔学院和微软研究院,正在一起做一个叫做 Pyjama 的项目。简单来说,它利用微软的动态语言运行时(DLR),让你可以随意混合使用Python和Ruby这两种编程语言。我还没试过,但听起来挺不错的。
网站上有个例子。你可以在“Python模式”下输入一个类。然后它会被编译,你再在“Ruby模式”下运行这个命令。
class PythonClass:
def hello(self, value):
print "Python says hello to", value
pc = python_class().new
pc.hello "Ruby"
这样就会输出“Python向Ruby问好”。
5
将动态语言整合在一起是Parrot项目的一个目标。这个项目是一个虚拟机,动态语言的编译器会针对它进行开发。一旦编译成同一个虚拟机的代码,你就可以在任何语言中使用“对象”这种形式,无论这个对象是从哪个语言来的。
不过,目前的问题是要让这个虚拟机稳定下来,并完成那些大部分已经完成的编译器。但是,这种状态已经持续很长时间了。:)