关于jruby:您期待哪个红宝石翻译?

关于jruby:您期待哪个红宝石翻译?

Which ruby interpreter are you looking forward to?

现在有多个Ruby实现在工作中。 您期待什么,为什么? 您是否在生产中积极使用非MRI实现?

一些选项包括:

  • Ruby MRI(原始1.8分支)
  • YARV(官方1.9)
  • JRuby的
  • Rubinius的
  • IronRuby的
  • MagLev(感谢朱利安)
  • MacRuby(感谢Damien Pollet)

磁悬浮。多年以来,它将一直在大型Smalltalk VM中进行的所有优化中带来速度优势。另外,它将自动几乎自动保留所有数据,因此不再需要研究对象关系映射层等等。


Ruby 1.9(YARV)使我们对红宝石的发展方向有了一个很好的了解,但我不建议将其用于生产。虽然肯定比1.8快得多,但是语法的某些部分也在不断变化,因此我认为您不能称其为稳定的。它确实具有一些有趣的新功能和语法,随着时间的推移,它们肯定会在所有其他实现中找到自己的方式。

JRuby和IronRuby很有用,因为它们使ruby可以访问一系列其他无法使用ruby的新库和环境。我自己对它们还没有发现太多用处,但是认为它们的存在真是太好了。它们可能允许红宝石渗透到企业环境中,否则将无法进入企业环境。那只能是一件好事。

鲁宾尼乌斯(Rubinius)和磁悬浮(Maglev)可能是最有趣的项目,但在未来它们对社区的益处可能最大。 Rubinius很可能会发展成用于ruby语言的尖端"纯" VM,从而使ruby代码的运行速度比现在快得多。凭借20余年的VM经验,Maglev似乎也极有希望。它还将提供超越标准VM的功能,但是这些功能当然是以代码可移植性为代价的。

总体而言,我最兴奋的是这些实现之间的竞争。让所有竞争项目都在努力使红宝石更好,只会使红宝石生态系统更强大。从我所看到的来看,尽管存在竞争,但它是友好的。每个项目都相互交流和借鉴。到目前为止,JRuby和Rubinius团队在创建红宝石规范方面所做的工作可能是最重要的成果,因为这将有助于确保所有实现保持兼容。


如今,jRuby稳定可靠。磁悬浮列车非常有前途。


还没有人提到MacRuby吗?我想它现在特定于Mac,但也可能可以编译成GNU或étoiléObjective-C运行时。

另外,我正在等待磁悬浮:)


那企业Ruby呢?这已经有一段时间了。

https://www.phusionpassenger.com/enterprise


推荐阅读