Head of Ruby Project to Support Microsoft

The lead on the Ruby.Net project throws his support behind IronRuby, though not all supporters agree with the move.

Two efforts to deliver an implementation of the Ruby language on the .Net platform have merged into one. Or have they?

Rather than continue to chase the same goal, Wayne Kelly, a lecturer at the Queensland University of Technology and the lead on the Ruby.Net project, said he is refocusing his efforts on Microsoft's IronRuby implementation. The Queensland University of Technology is based in Brisbane, Australia.

However, some supporters of the Ruby.Net project are considering keeping it going as a "stepping stone" while IronRuby is being developed.

Kelly, who presented the progress of the Ruby.Net project Jan. 29 at the Lang.Net conference on Microsoft's Redmond, Wash., campus, announced Feb. 4 that he now plans to support the IronRuby effort.

In a blog post Feb. 5, John Lam, a Microsoft engineer who is heading up the IronRuby project, extended a "warm welcome to Wayne, and we invite anyone else who wants to work on IronRuby to join our Open Source project. Microsoft Research funded a portion of the development of Ruby.net, and their parser lives on in IronRuby thanks to the excellent work that Wayne did in producing the Gardens Point Parser Generator."

Meanwhile, in an e-mail to the Ruby.Net Compiler Discussion group posted late Feb. 4, Kelly said he felt no need to continue work on the Ruby.Net effort because Microsoft's DLR (Dynamic Language Runtime) "is clearly here to stay-it's becoming an even more important part of the Microsoft platform. I also believe that to obtain production quality performance, Ruby.NET would need to reinvent (or adopt) something equivalent to the DLR. If we were starting the project today, there is no way we wouldn't use the DLR."

Ruby.Net started as a Microsoft-funded research project to place a Ruby implementation on the Microsoft CLI (Common Language Infrastructure). The project released its first beta last year. Kelly said his team began feeling confident about delivering a production release of the technology. Yet, "the release of IronRuby last year obviously caused us to question this unstated goal." he said. "At the time we didn't know if the IronRuby project and the DLR would succeed, so we decided to continue with Ruby.NET at that stage."

However, "last week at the Lang.NET Symposium, I presented our work on the Ruby.NET project and also had the opportunity to learn more about the progress of the IronRuby project and the inner workings of the DLR," Kelly said in his e-mail. "Whilst Ruby.NET initially had a good head start on the IronRuby project; by incorporating the Ruby.NET parser and scanner and by leveraging the DLR, I now believe that IronRuby is more likely to succeed as a production quality implementation of Ruby on the .NET platform. I believe that ultimately there is no need for two different implementations of Ruby on .NET. So, if Ruby.NET is ultimately not going to be that implementation, then we should not waste further developer effort fruitlessly chasing that goal."

Thus, said Kelly: "I believe we (the Ruby.NET community) can make the biggest impact by [leveraging] our experiences with Ruby.NET to contribute to the IronRuby and DLR projects."