Mirah is my favorite programming language for the JVM <full stop>
I've long wondered why someone didn't take the learnings from the Ruby/Python languages and from the functional languages, built a lovely little syntax and stuck it on the JVM. [Instead, we get Scala...] [Note: I really want to learn Clojure, but it's a little far from my day-to-day to focus on right now].
From mirah.org:
In general, Mirah could be seen as a "Ruby with static types"
So Mirah is Ruby + static types + type inference! You get the clean syntax of Ruby with the terseness of scripting and/or type-inferred functional languages with the performance of a compiled language. It's like peanut butter + chocolate + bacon + Himalayan pink salt.
"Mirah is a new way of looking at JVM languages. In attempting to build a replacement for Java, we have followed a few guiding principals:
No runtime library
Mirah does not impose any jar files upon you. YOU decide what your application’s dependencies should be.
Clean, simple syntax
We have borrowed heavily from Ruby, but added static typing and minor syntax changes to support the JVM’s type system. The result is pleasing to the eye, but as powerful as Java.
Metaprogramming and macros
Mirah supports various mechanisms for compile-time metaprogramming and macros. Much of the “open class” feel of dynamic languages is possible in Mirah.
No performance penalty
Because Mirah directly targets the JVM’s type system and JVM bytecode, it performs exactly as well as Java."
As a Ruby hacker, Mirah would be great for Android development. The toolchain for this is a bit immature, so a big thank you to all those participating in the hackathon to bring this reality one step closer.
Exactly. I was doing some JRuby + Monkeybars + Kinect stuff and needed some speed in processing the image data. I tried using Mirah but I ran into some issues and fell back to plain Java. :(
Being able to use Ruby or a Ruby-like language throughout would be immense.
Did you fill a bug report? I had some problem as well(weird setup, I admit), but I asked in the IRC room, and they sorted it out with me. I'm now a happy Mirah user… on the LEGO NXT.
I've long wondered why someone didn't take the learnings from the Ruby/Python languages and from the functional languages, built a lovely little syntax and stuck it on the JVM. [Instead, we get Scala...] [Note: I really want to learn Clojure, but it's a little far from my day-to-day to focus on right now].
From mirah.org: In general, Mirah could be seen as a "Ruby with static types"
So Mirah is Ruby + static types + type inference! You get the clean syntax of Ruby with the terseness of scripting and/or type-inferred functional languages with the performance of a compiled language. It's like peanut butter + chocolate + bacon + Himalayan pink salt.