Follow Us

Java and Ruby welded together with Mirah

New programming language attempts to ease Java coding

A key Java platform developer is moving forward with an experimental programming language dubbed Mirah, which attempts to meld the niceties of Ruby with the heavy-duty performance of Java. Mirah is intended to look like Ruby while being statically typed and compiling to fast Java Virtual Machine bytecode. The Mirah project is headed up by Charles Oliver Nutter, a co-lead of the JRuby project that puts Ruby on the JVM.

Mirah provides "a nicer way to write Java code," Nutter said Thursday at the O'Reilly Open Source Convention (OSCON) in Portland. "Mirah is essentially Ruby syntax for writing Java code," said Nutter, who works for Engine Yard. Developers, he said, can eliminate the "ceremony "of Java. "You can write what looks like Ruby and get plain old Java," he said.

While Mirah would be of use in high-performing applications, Ruby still has features that Mirah lacks, said Nutter. JRuby and Ruby, he said, have some nicer APIs, for example.

Mirah has been in development for about a year but in the past six months has begun to reach a usable state, Nutter said. A 1.0 release is planned for the end of this year. Currently, Mirah could be used for writing simple applications but at the moment, it lacks some Java features such as generics, Nutter said.

Developers could use Mirah to write applications for the Google App Engine cloud and for the Google Android mobile platform.  A Mirah website has been set up that says Mirah means Ruby in Javanese, the language of the island of Java.

Also in the programming language spotlight at OSCON, a Google official cited the company's efforts with its Go language which, like Mirah, is open source. Go, said Rob Pike, who holds the title of distinguished engineer at Google, is intended for writing applications such as large-scale software for clusters, web servers, and connected machines.

"It's gotten very difficult to write those programs in languages like C++" or Java he said. "The builds take too long [and] the language doesn't address some of the things we have to be thinking about," such as multiple processors, networking, and distributed computations, Pike said.

Currently, Go has reached a status where it is stable but libraries still need to be improved, according to Pike. Linux and Mac OS backing is offered, with Windows support also planned.

Go is an attempt to make a language with the fluidity of  a dynamic language such as Python while offering benefits of a statically typed program that is compiled, Pike said. Programs written in dynamic languages have had drawbacks in that they have been slow, difficult to maintain, and they break, he said.

Go would not be used for programs that run in a browser, said Pike. The language is "not a panacea," he said. OSCON attendees Thursday also were brought up to speed on the D language, which is unrelated to a Microsoft language that had been internally codenamed "D" two years ago.

The 10-year-old D language has static typing and an extremely fast compiler, said Walter Bright, of compiler maker Digital Mars. A co-inventor of the language, Bright described D as a big, multi-paradigm language that is, among other things, imperative, object-oriented, and supports functional programming and concurrency.

"If you're looking for a very small language, you need to look for another because D is a big language, but it's not unnecessarily big," Bright said. The idea with D is to push complexity into the compiler so user code is simple and elegant, he said.

D 2.0 was released last month and features capabilities for functional and concurrent programming.

D is supported on platforms including Windows, Linux, Mac OS X and Free BSD. Among its uses, a JavaScript engine has been written in it and an OS system kernel is being written in D, said Bright. D also has been used for authoring games. Many companies use it, but they do not advertise their use, Bright said.






Send to a friend

Email this article to a friend or colleague:

PLEASE NOTE: Your name is used only to let the recipient know who sent the story, and in case of transmission error. Both your name and the recipient's name and address will not be used for any other purpose.

Techworld White Papers

Desktop modernisation

On the one hand, there is the need to keep the existing desktop environment efficient, secure...

Download Whitepaper

Top 10 myths about virtualising business-critical applications

Even though virtualization has brought positive change to enterprise IT over the last decade,...

Download Whitepaper

Aligning CFO and CIO priorities

Forward-thinking organisations are viewing cloud computing as an investment in business...

Download Whitepaper

The new corporate network

Businesses can’t afford to have employee productivity suffer because they cannot use their...

Download Whitepaper

Techworld UK - Technology - Business

Techworld Awards

Techworld Awards 2012
Coming Soon

Opening for submissions 30th April 2012

 

Find out more

Techworld Mobile Site

Access Techworld's content on the move

Get the latest news, product reviews and downloads on your mobile device with Techworld's mobile site.

Find out more...
LogMeIn Rescue

Accelerate Your IT Efficiency

View the latest capacity management resources including whitepapers, videos and news.

Find out more...

Site Map

* *