It is becoming more and more obvious that there are just two runtimes left to execute code, the Java Virtual Machine (JVM) and the Common Language Infrastructure (CLI). So, I decided to see how they stack up. Looks like both environments have something for everyone.
Here is a list of programming languages available on these runtimes.
- Can run on CLI using IKVM.NET
- Can run on JVM using Mainsoft solution
- Not yet usable
- Can run on CLR, but is behind the JVM implementation
The main reason for the research was to identify a new language I should pick-up. I looked at Python and Ruby, but both have some sore thumbs that I just can’t stand. I really liked Boo and Groovy; they are similar to C#/Java in syntax and incorporate the good things from Python. Although I like Boo’s syntax and approach more than Groovy, Groovy has a more mature implementation and ecosystem. I will try to use Groovy for some hobby project and get a feel to things.
5 replies on “The great runtime shootout”
[Off topic] What tool did you use to generate the table image above? 🙂
After several trial and errors, involving the tools I had. The best results were from PowerPoint 2007 exported as HTML, and then picking the png from the exported folder.
Got it! Thanks! 🙂
Came here to ask the above question 🙂 Since it is already answered, here’s an observation instead: I get the feeling that the JVM languages are more mature than the CLI ones.
Read this article on Scala: http://www.computerworld.com.au/article/315254/-z_programming_languages_scala?fp=&fpid=&pf=1
Thinking I should try it out. If it works out, it’ll be easier to sneak it into work because of the Java libraries inter-op capability.
You should be able to use Jython more easily. JVM langs are more mature, but Iron* is sponsored by Microsoft, so they are not going to vanish some day.