minnestar text logo


Sign up to stay up to date.


Mirah: A Pragmatic Replacement for Java

URL: http://blog.headius.com/,

These days you can’t swing a stick without hitting a new JVM language. But there’s something missing: none of them fits well as a drop-in replacement for Java itself. Perhaps they are dynamic languages with performance concerns. Perhaps they are functional languages with wildly different semantics. Or perhaps they simply require too large a runtime library to be easily deployed. Enter Mirah.

Mirah is a new language for the JVM that’s statically typed, easy to extend and fun to use. It combines Ruby-like syntax with a typed-inferencing compiler that produces standalone Java source or class files…imposing no runtime library upon you whatsoever. It supports features like closures, optional arguments, optional dynamic invocation, literal lists, hashes, and regular expressions, and more.

I will show the basics of Mirah, with a focus on getting a new project up and going. We will explore projects people are using Mirah for today, like Google AppEngine and Android apps. If there’s time, we’ll also see how to extend Mirah by either writing compiler plugins (in Ruby!) or by writing app or domain-specific macros in either Mirah or Ruby.


Minnebar 6 (2011-05-07)


Charles Oliver Nutter