When Microsoft copied the Java platform and came out with .NET they did something smart.
The marketing machine really pushed the fact that .NET was a platform, and that you, the developer, can use whatever language you want. This allowed for a unity between VB/C#/C++. Well, at least in theory ;)
A lot of people saw .NET vs. Java as:
Java == Platform portability. One Language (Java)
.NET == One Platform (Windows. Mono? ;). Language Portability (VB/C#/C++/Python.NET/insert pet language here)
Now. .NET did get the chance to play with some opcodes in their VM (CLR), which could help various languages, but TECHNICALLY the JVM and the CLR are pretty damn similar, thus we can have a bunch of languages which produce Java bytecode can’t we?
Of course we can. And we have had this for a long time. There are hundreds of languages that spew out bytecode.
However, Sun screwed up. They didn’t help these projects. Microsoft did.
I was hoping that Sun had Got It, when they started talking about JSRs for PHP support, and then when they pushed through the Groovy JSR (which I never thought would get through!).
However, I still don’t think they get it. The proof is in subtle ways in which we see the way they think about the platform.
They keep putting functionality in javac!!!!!!
The obvious recent example is Generics. Most of the Generic stuff was shoved at the compiler folk. With Erasure, people playing with the bytecode don’t see anything of the types that the Java programmers had been using. They are blind to that knowledge. It all just looks like bloody Object’s to them.
What a waste. I really hope that Sun gets that functionalty should be put into the platform when it makes sense. When this is done, then any language/tool that sits on top of that platform gets use out of it.
This is what Microsoft does. They have VB, C#, and C++ folk watching over the CLR folk. As soon as anything happens you can be sure that people jump in saying “HOW CAN I SUPPORT THAT!”. No favourites. Like your kids.
When all of your kids are happy, they can all get out on the campaign trail helping the cause. If your kids aren’t happy they get sent to europe as to not embarrass ;)
Come on Sun. Think about the strength of the platform….