To view parent comment, click here.
To read all comments associated with this story, please click here.
Technicly speaking, you could use other languages to develop for the JVM too. It may not be that easy (since the JVM was not made from ground zero to be multi-lingual) but It can be done, and there are some compilers around. Some real examples are listed here: http://www.is-research.de/info/vmlanguages/?s=compile
So if what we need is a VM where wecan use many languages, we could create our own or extend JVM or some other VM. No reason to jump to a "not-so-open" solution created by evil itself.
I know about that (except for the "created by evil itself" part).
For example IronPython (and DLR) has been done by Jython creator (Jim Hugunin) - who is now working for Microsoft btw. So you can do many stuff for JVM, too. (I think there was lisp for JVM, too).
Nevertheless, MS has added support for special constructs that made the VM flexible enough for many languages (e.g: I can directly use Pytho standard lib sources from CPython in IronPython without any modifications):
* Generics in the VM itself
* Extensive metadata
* Faster reflection based calls (from .Net 2.0)
* Nullable type support for the VM
* Several functional language constructs
* DLR (is actually an open source extension, but utilized by Python, Ruby and JavaScript implementations).
So, basically, MS did look at where Java fell short, and also at their own mistakes (like VB), and did a good job. And it helps me with my project, double kudos to them.
Edited 2009-07-07 11:40 UTC







Member since:
2006-11-19
"They copied most of it from other languages anyway, so why not use Java, Ruby, C++, Object-C, Object-Pascal, Python, Smalltalk, ..?"
You meant IKVM, IronRuby, C++/CLI, Oxygene, IronPython, S#, right?
Ok, just kidding. But to let you know, the current project I'm working on uses C#, Python, Java, and JavaScript under the same code base thanks to .Net architecture.