JVM上的Ruby编程语言 JRuby 1.6.6 发布

摘要:JRuby是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与 Java库 全面集成。

JVM上的Ruby编程语言 JRuby 1.6.6 发布

JRuby是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与 Java库 全面集成。Rails彻底加快及简化了Web应用的开发,不过它让人觉得不够成熟,特别是在高端企业级功能方面。另一方面,Java平台及其虚拟机、库和 应用服务器的速度、稳定性和功能方面却一直在提升,现在已被公认为是开发高端服务器应用的领先平台。不过如果Java平台不与Ruby等新兴语言联系在一 起,就有可能落后于流行趋势。示例代码:

  require "java"
  
  include_class "java.util.TreeSet"
  include_class "com.example.CallMe"
  include_class "com.example.ISpeaker"
  
  puts "Hello from ruby"
  set = TreeSet.new
  set.add "foo"

  set.add "Bar"
  set.add "baz"
  set.each { |v| puts "value: #{v}" }
  
  cm = CallMe.new
  cm.hello
  $globalCM.hello
  
  class CallJava
    include ISpeaker
    def initialize
      super
      @count = 0
    end
  
    def say(msg)
      puts "Ruby saying #{msg}"
    end
    
    def addOne(from)
  #    m.synchronize {
        @count += 1
        puts "Now got #@count from #{from}"

  #    }
    end
  end

JRuby 1.6.6 更新版本发布了,该版本支持 Ruby 1.9 ,在性能方面也有不少改善,值得关注的变化有:

  • Updated stdlib to match Ruby 1.8.7p357 and 1.9.2p312
  • Updated RubyGems to 1.8.15
  • Multiple 1.9-mode yield/splat bugs fixed (pp, rspec 2.8 working again)
  • Multiple 1.9-mode encoding bugs fixed
  • Critical fixes in Random and Fiber
  • Map Scala operator methods to symbolic names ($plus, etc)

完整的列表请看:full list of resolved issues 

该版本将是 1.6 分支的最后一个更新版本,开发团队接下来主要的工作是开发 JRuby 1.7.

 

扩展阅读

小众编程语言同样值得你关注
移动后端支持平台Parse将API由Ruby迁移到Go
Java地位无可动摇的12个原因
Ben Evans:保守的设计思想是Java的最大优势
观点:应用开发Java依然强势

为您推荐

Java实现的Ruby解释器 JRuby 1.6.5 发布
Linux命令行的艺术
Protocol Buffers v3.0.0发布,Google公司开发的一种数据描述语言
前端篇: 前端演进史
JVM 动态脚本语言,Groovy 2.4.2/2.3.11 发布

更多

Ruby
软件编程