Paul Krill
Editor at Large

Ruby shining on .Net Down Under

news
Aug 14, 20063 mins

Aussie developers ready compiler for scripting language

Developers in Australia are working on a Ruby compiler that converts Ruby source code into Microsoft’s Common Intermediate Language (CIL) for execution on Microsoft’s .Net Framework 2.0 platform.

Created at the Queensland University of Technology, in Brisbane, Australia, the Gardens Point Ruby.Net compiler is being released via an open source-style license.  It is a true .Net compiler, as opposed to an interpreter or a Ruby-.Net bridge, said Wayne Kelly, a project leader and senior lecturer at the university. The compiler provides access to .Net facilities and libraries and an API for developing Windows forms applications is included. Currently available in a beta release, a general release with full language and built-in class support is planned by the end of the year.

“The .Net platform was designed to support many different programming languages so that developers could choose to use their favorite source language while still providing high levels of interoperability between components implemented in different languages,” Kelly said in an email response to questions. “All of these languages also are able to make use of a large collection of libraries used, for example, to connect to databases, process XML, help implement web applications, etc.”

“So, to existing .Net programmers, the Gardens Point Ruby compiler adds Ruby to the set of languages they can make use of to develop .Net applications. Ruby is an increasingly popular language with many fanatic users,” Kelly said.

“The fact that .Net is managed, and so provides sandboxed type security, is also very important in some security-critical scenarios – for example implementing SQL Server stored procedures using fully verifiable .Net code,” Kelly said. “This is why we aim to generate only fully verifiable managed code – with no native invokes to un-trusted code.”

A wider research goal of the project is to investigate support for dynamic languages on mainstream managed execution environments and to consider how interoperability can be achieved with other dynamic languages such as Python. Thus far, developers have not optimized performance of the system to support interoperability with .Net programs written in other languages, according to the Web page on the compiler. But that will be a goal once semantic compatability with the standard Ruby interpreter is achieved.

Although the project has received financial and technical assistance from Microsoft Research, it is controlled and run by the university.

Efforts to offer scripting language support on Microsoft’s .Net platform are growing, with projects afoot such as IronPython, which is an implementation of the Python programming language for .Net, and Ruby in Steel, which blends Ruby programming into the Visual Studio 2005 environment.

Also, Microsoft this week introduced a set of tools called XNA Game Studio Express, which are intended for game development on the Xbox 360 console and Windows XP. The tools are based on Visual Studio Express and .Net. A beta release is planned for August 30.

Paul Krill

Paul Krill is editor at large at InfoWorld. Paul has been covering computer technology as a news and feature reporter for more than 35 years, including 30 years at InfoWorld. He has specialized in coverage of software development tools and technologies since the 1990s, and he continues to lead InfoWorld’s news coverage of software development platforms including Java and .NET and programming languages including JavaScript, TypeScript, PHP, Python, Ruby, Rust, and Go. Long trusted as a reporter who prioritizes accuracy, integrity, and the best interests of readers, Paul is sought out by technology companies and industry organizations who want to reach InfoWorld’s audience of software developers and other information technology professionals. Paul has won a “Best Technology News Coverage” award from IDG.

More from this author