Wednesday, February 27, 2008

University of Tokyo and JRuby Team to Collaborate on MVM

Finally the full announcement is available. We're pretty excited about this one...

The University of Tokyo and Sun Microsystems Commence Joint Research Projects on High Performance Computing and Web-based Programming Languages

Improving Efficiency and Simplicity of Fortress, Ruby and JRuby Languages is Current Focus for Unique Academic-Corporate Collaborative Model

TOKYO and SANTA CLARA, Calif. -- February 27, 2008 -- The University of Tokyo and Sun Microsystems, Inc. (Nasdaq: JAVA) today announced two joint research projects that will focus on High-Performance Computing (HPC) and Web-based programming languages.

...

The two research topics are:
  • Development of a library based on skeletal parallel programming in Fortress
  • Implementation of a multiple virtual machine (MVM) environment on Ruby and JRuby

Some of you knew about this from Tim Bray's rather cryptic announcement at RubyConf. The basic idea here is that we on the JRuby team and folks in Professor Ikuo Takeuchi's group at the University of Tokyo will be cooperating to come up with an MVM specification and implementations for the Ruby 1.9 and JRuby codebases. Tom and I have had brief discussions with Professor Koichi Sasada (ko1, creator of YARV) about this already, and there are mailing lists and wikis already running. I've also made sure that Evan Phoenix, of Rubinius, is included in the discussions. Like JRuby, Rubinius largely has MVM features implemented, but the eventual form they'll take and API they'll present is up in the air.

This should be an exciting collaboration between Sun and U Tokyo, as well as between the three most functional next-generation Ruby implementations. I'll certainly keep you posted on all MVM developments as they come up, and I welcome any comments or suggestions you might have.

4 comments:

janprill said...

It's absolutly fantastic to hear that most programmers favourite language is taking steps forward in the area of parallelism...

Cheers,

Jan Prill

Anonymous said...

What is a "Web-based programming language"?

Unknown said...

When you say "MVM" for JRuby you're talking more at the JRuby level than at the JVM level, correct?

And, more to the point, this has nothing to do with the research project at SunLabs in MVM for Java

http://java.sun.com/developer/technicalArticles
/Programming/mvm/

correct?

(in spite of the name space collision)

Charles Oliver Nutter said...

@anonymous: Great question!

@glenn: Yes, this work is unrelated to the Java MVM work that's been ongoing for some time. But it's not unreasonable to think of JRuby as being a "mini VM" for Ruby on top of the JVM, so our use of MVM seems appropriate...especially since what we provide with multiple JRuby instances on a single JVM will fill the same requirement as "real" MVM on Ruby 1.9 and Rubinius.