IBM new open source project to speed up Ruby and Python

|

According to an article by Java World, IBM’s new project could improve the performance of other languages like Ruby and Python.  “The OMR project takes pieces of IBM's J9 Java virtual machine, decouples them from Java, and turns them into components that can be added to any other language runtime. What's more, proof-of-concept implementations for Ruby and Python are already in the works, with the Ruby variant set to be open-sourced shortly.”

Ruby and Python are the first two languages that IBM has selected to use as concept proofs for its new project. Both Ruby and Python are currently very popular and have managed to be included in TIOBE Programming Community Index top ten for November 2015.

IBM’s open source project is expected to increase the speed of many other languages by creating a ‘toolkit for language runtimes,’ as well as make it easier for various platforms to maintain JVM. IBM Canada senior software developer Mark Stoodley gave a presentation about the IBM's internal OMR project at the 2015 JVM Language Summit. He said that usually it is very difficult to maintain a language, and went on describing how the new OMR project will help different language to maintain JVM more easily.

“Work done for any language runtime rarely aids work on another language runtime. And while ports of languages to the JVM often have their own active communities (such as Jython vs. Python), it comes at the cost of splintering the community across different implementations of the language,” wrote Serdar Yegulalp for InfoWorld. “IBM plans to take pieces of J9's VM and turn them into a set of open source resources that can be worked into other language runtimes. Aside from the JIT compiler, these components include a memory allocator, thread library, platform port library, event hook framework, VM and application-level trace engine, and garbage collector -- most of which are commonly found in any language interpreter, but have to be implemented separately for each language,” Yegulalp continued.

Given the fact that functions like memory allocator, thread library, platform port library, event hook framework, VM and application-level trace engine, etc. are already included in J9, according to Yegulalp, they can be reused for any other languages. “The pieces provided by OMR could not only be added to existing runtimes, but could be used to build runtimes for entirely new languages as well.”

During his talk, Stoodley explained that the new OMR project “is not a research project, but a lingering interest for IBM's JDK product development team, since the project goes hand in hand with an aggressive refactoring of J9.” It is not yet known in what degree the OMR could benefit to different platforms, but the project’s components seem very promising.

(Image source: fossbytes.com )


Silvae Technologies Ruse, Bulgaria

44B Borisova Str.
7012, Ruse, Bulgaria

Silvae Technologies Brussels, Belgium

1000 Brussels, Belgium