发布于 2015-06-11 00:31:09 | 165 次阅读 | 评论: 0 | 来源: 网友投递

这里有新鲜出炉的精品教程,程序狗速度看过来!

JRuby Java实现的Ruby解释器

JRuby,是一个采用纯Java实现的Ruby解释器,是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库 全面集成。Rails彻底加快及简化了Web应用的开发,不过它让人觉得不够成熟,特别是在高端企业级功能方面。另一方面,Java平台及其虚拟机、库和 应用服务器的速度、稳定性和功能方面却一直在提升,现在已被公认为是开发高端服务器。


JRuby 9.0.0.0.rc1 发布,此版本是 JRuby 团队经过多年的努力和大规模重新启动一些 JRuby 子系统的结果。此版本兼容 Ruby 2.2.x,并且同步 C Ruby。

JRuby 9000 主要特性:

  • Ruby 2.2 兼容

  • 基于一个传统编译器设计的优化运行时

  • 新 POSIX 友好 IO 和 Process

  • 可以完全从 MRI 移植编码/转码逻辑

相比 pre2 的重要更新

  • Updated to Rubygems 2.4.8 addressing CVE-2015-1855

  • Several parser issues (also fixed in ripper)

  • Optimized multiple assignment

  • Several added smaller missing methods for better 2.2 compatibility

  • A couple of bugs involving nested exceptions/ensures and $!

  • 46 issues fixed for 9.0.0.0.rc1

JRuby 9000 初步支持 Truffle 语言实现框架和 Oracle 实验室的 Graal VM。详情请看 JRuby Wiki

JRuby 9.0.0.0.rc1 issues

  • #3022 - Don't call modify() on RubyStrings so eagerly when freezing them

  • #3019 - Small string values backed by HUGE non-shared ByteList leading to large memory usage under 9k

  • #3016 - OutOfMemoryError in 9k on code with very large methods

  • #3010 - 9k has different scoping behavior than MRI

  • #3009 - LocalJumpError: yield called out of block in JRuby 9.0.0.0.pre2

  • #3008 - Module#included is private when called with super

  • #3007 - splats with non-array like values

  • #3006 - add recursion guard in Comparable.

  • #3002 - Don't warn on private attribute accessors to match CRuby

  • #2993 - Many failures in Sequel tests on [RuntimeError] exception expected, not Class: <NoMethodError>  Message: <"undefined method `[]' for nil:NilClass">

  • #2986 - certain require do not load extension Service class

  • #2984 - Socket.pair is not implemented

  • #2983 - Net::HTTP can't ignore http.proxyHost of JVM System Property

  • #2976 - Regression: Sequel's literals contain additional quotation marks under JRuby 9k head but not under pre2

  • #2975 - Requiring Sequel triggers false warnings `already initialized constant`

  • #2974 - NotImplementedError: waitpid unsupported or native support failed to load on OS X 10.9.5 / OpenJDK 8 / rbenv

  • #2959 - JRuby 9k-pre2 throws IOError when reading from $stdin

  • #2957 - JRuby 9.0.0.0.pre2 starts hanging while reading from a socket

  • #2939 - Issue #2924

  • #2924 - Issue in org.jruby.util.TypeConverter CheckType

  • #2920 - Proc from Method breaks encoded parameter list

  • #2919 - Add another layer of try/finally around rescue/ensure to reset $!.

  • #2918 - Method#parameters doesn't annotate required parameters correctly

  • #2916 - Multiple assignment has too much overhead

  • #2910 - $! does not get cleared under certain circumstances

  • #2905 - Different Regexp behavior from MRI

  • #2904 - require 'ripper' yields const already init warnings

  • #2899 - Fix for issue 2896 on master : Symbol#inspect with utf8 encode string

  • #2887 - jrubyc failing - TypeError: failed to coerce org.objectweb.asm.ClassWriter to org.jruby.org.objectweb.asm.ClassVisitor

  • #2877 - Implementation of initialize_copy for BigDecimal (fix #2868)

  • #2871 - Enabling tty for powerpc64

  • #2869 - NameError different behavior

  • #2868 - BigDecimal can not be copied

  • #2850 - Fannkuch-redux is less than half as fast in 9k as in 1.7

  • #2772 - Make Dir raise Errno::EACCES

  • #2756 - Allow File.open and File.new with 4 arguments

  • #2744 - Syntax error with file that has OK syntax with MRI 2.2

  • #2724 - Socket.getaddrinfo reverse_lookup

  • #2616 - Fix power of 0 and 1 issues in Rational

  • #2605 - Fix File.read with UTF-16LE

  • #2603 - Add support for named captures in StringScanner (fixes #1067)

  • #2563 - RubyArray#flatten! uses `respond_to?` unlike the original [lotus]

  • #2475 - Truffle: Understand and reduce impact of Truffle on the distribution size

  • #2036 - Demonstrate pedantic option

  • #1955 - -X... and -X? options to search for properties.

  • #1629 - Another unexpected kDO_BLOCK error in parser

同时还发布了 JRuby 1.7.20.1 版本,是 JRuby 1.7.0 以来的第 24 个更新版本,主要是兼容 Ruby 1.9.3。此版本安全更新只是升级 Rubygems 到版本 2.4.8,解决 CVE-2015-1855 漏洞。强烈建议升级!

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

JRuby,是一个采用纯Java实现的Ruby解释器,是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库 全面集成。Rails彻底加快及简化了Web应用的开发,不过它让人觉得不够成熟,特别是在高端企业级功能方面。另一方面,Java平台及其虚拟机、库和 应用服务器的速度、稳定性和功能方面却一直在提升,现在已被公认为是开发高端服务器。



历史版本 :
JRuby 9.1.12.0 发布,Java 的 Ruby 解释器
JRuby 9.1.11.0 发布,Java 的 Ruby 解释器
JRuby 9.1.10.0 发布,Java 的 Ruby 解释器
JRuby 9.1.6.0 发布,Java 的 Ruby 解释器
JRuby 9.1.4.0 发布,Java 的 Ruby 解释器
JRuby 9.1.3.0 发布,Java 的 Ruby 解释器
JRuby 1.7.26 发布,Java 的 Ruby 解释器
JRuby 9.1.2.0 发布,Java 的 Ruby 解释器
JRuby 1.7.25 发布,Java 的 Ruby 解释器
JRuby 9.0.5.0 发布,修复 53 个 issues
JRuby 1.7.24 发布,Java 的 Ruby 解释器
JRuby 1.7.23 发布,Java 的 Ruby 解释器
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务