Ruby 2.1 With Better Garbage Collection
Ruby 2.1 With Better Garbage Collection
Written by Alex Denham   
Friday, 03 January 2014

The latest version of Ruby 2.1 has been released with improvements including better performance deriving from major changes to the garbage collector.

Other improvements include support for refinements, decimal and frozen string literals, and support for named captures in StringScanner.

The support for refinements has been improved; in previous versions you were limited to applying refinements to a single Ruby file, but they can now be applied within a module without affecting the top level scope of the file. This is a controversial change that may not be implemented in other versions of Ruby as many developers consider it leads to confusing code.

The support for named captures was introduced for regular expressions in Ruby 1.9, but StringScanner didn't support it until this version.

The improvements to the garbage capture in Ruby should make it faster to use. The changes won’t affect all garbage collection, as not all objects will be treated differently in the new version. Instead, objects will be classified by the VM as sunny or as shady. Sunny objects will be handled by the new generational garbage collector.

rubygc

There’s a good description of the changes in a slide deck prepared  by Ruby developer Koichi Sasada for a talk at RubyKaigi. Popular objects such as Array, String, Hash, Object, and Numeric will be able to take advantage of the new system, and work will continue on other objects to bring them into the scope of the garbage collector.

 

 

ruby

More Information

Introducing Restricted Generational Garbage Collection into CRuby/MRI (pdf)

List of changes in Ruby 2.1.0

Related Articles

Ruby 2.0.0 Emphasizes Lazy

New Ruby Website Now Open

Ruby turns 18

 

To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin,  or sign up for our weekly newsletter.

 

blog comments powered by Disqus

 

Banner


C++ Where Is It Heading? C++17
06/07/2016

C++ is moving really fast at the moment, well for C++. After C++14 we now have a proposal for C++17 and a new C++ every three years. Look out for C++20. So where is the language going?



DARPA Cyber Grand Challenge AI Will Prevail
20/07/2016

Next month Las Vegas will host the Final Event of the DARPA Cyber grand Challenge as an all-computer cyber-defence Capture the Flag tournament. From an initial field of over 100 applicant seven teams  [ ... ]


More News

Last Updated ( Friday, 03 January 2014 )
 
 

   
RSS feed of news items only
I Programmer News
Copyright © 2016 i-programmer.info. All Rights Reserved.
Joomla! is Free Software released under the GNU/GPL License.