JRuby 9.0.0.0 released today. The active development phase lasted about two years, during this time more than 5,500 commits from 104 developers were counted. And some of the things on which this release is based were started over five years ago. In general, a huge amount of work has been put into this version and it is now very pleasant to congratulate the developers on their successful completion.
What is JRubyJRuby is an implementation of the Ruby programming language that runs on a Java virtual machine. The main advantages: high speed, parallelism without GIL, the ability to call java-libraries from ruby-code, as well as the possibility of scripting on ruby for java-applications.
The main differences from version 1.7
New runtime
Designed by Subramanya Sastry (subbu). The performance of the new runtime roughly corresponds to the performance of JRuby 1.7, but it has a lot of potential. Now only conservative static optimization is used, but the profiling optimization will be implemented later.
POSIX-compatible workflow with I / O processes
In previous versions of JRuby, working with processes was a big headache. For example, it was impossible to send signals to descendants, receive data from them without blocking, and many more problems caused by the fact that Java hides such a low level of abstraction from the application. Now, some of the functionality has been moved to native code, and the Ruby programs have received a full POSIX environment.
')
Compatible with Ruby 2.2
Implemented syntax and library support for Ruby 2.2.
Other changes
Why after 1.7 version number 9.0.0.0?
To reduce confusion with matching versions of MRI Ruby. The numbering of JRuby and Ruby is not related, but the proximity of the values misleads people about their equivalence. In JRuby 1.7, compatibility modes were implemented, which allowed running the code for different versions of MRI Ruby in the same version of JRuby, for example, 1.8.7 or 1.9.3. Compatibility modes are now canceled and JRuby is always focused on compatibility with the latest version of Ruby (now version 2.2). Subsequent versions of JRuby will continue to be numbered as 9.x.
Details about the release can be found in the
blog developers .
PS RVM has a new release. But so far only in the head, and not stable. Set by the command:
rvm install jruby-9.0.0.0