Question

There have been many JVM languages in the recent few years including Javascript, Python, Ruby etc. (full list here: List of JVM Languages). My question is this: why has Sun not come out with a full suite of languages for the JVM just like Microsoft's .NET? With the new version of the JVM, they can make any necessary adjustments for dynamic languages or the type system and release a compiler for at least a few languages. This would immediately give access to Java's already existing large class library to a whole bunch of languages.

Was it helpful?

Solution

The financials say it all:


MSFT - Market cap of 173B, Net income of 17B


JAVA - Market cap of 2B, Net income of 400M

OTHER TIPS

Sun (now Oracle) doesn't really need to do much itself to create more JVM languages - since this role has largely been taken up by the open source community and/or the wider Java ecosystem.

Consider:

  • Modern, increasingly popular open-source JVM languages like Scala, Groovy and Clojure
  • Libraries created or sponsored by organisations like the Apache Software Foundation that can be used by all JVM langauges
  • IDEs / development tools by the Eclipse Foundation and others
  • Various tools and enterprise products created by the major corporate backers of Java, including IBM, Red Hat, Google etc...
  • Development of Java language and platform itself as an open source product through the OpenJDK project

It's therefore more appropriate to think of Java as an open ecosystem with many participants, rather than a platform controlled by a single company.

I see two questions: will Sun change the JVM to support dynamic languages (that would be neat, although some dynamic languages managed to work already on the current VM, perhaps at the cost of performance); and why Sun doesn't officially develop other languages.

I hope they will do the first, but I don't see the need for the second. Scott's answer is quite good. Beside, Java is here for quite some time already, while Microsoft had to jump start their CLR/.NET platform, hence they needed to give the maximum to convince developers... and they can afford it!

So I am not sure Sun needs to push alternative languages for the JVM, the independent developers are vigorous enough to do it without help.

Beside, JavaFX scripting language can be seen as such (ie. official language for JVM) and it seems that BeanShell might be adopted in a JSR.

If you're looking for Visual Basic for the JVM, I'm afraid that project's been cancelled :-)

Seriously, after many years of focusing on just the Java language, Sun now directly supports the developers behind both Jython and JRuby, and is changing the JVM and their IDE to better support these languages. Java 6 also includes the Rhino JavaScript runtime now.

You're correct that these are not languages that Sun developed from scratch, and I think that's a good thing. The Java ecosystem has a long history of innovation happening in the community, and at a lot of other companies that depend on Java, like IBM and Oracle.

I don't really see which problem Sun would be solving by creating brand new languages to support. I'm not even sure JavaFX is best served by having a completely new language. I understand why MS had to support Visual Basic on .NET, but thankfully Sun doesn't have to do that.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top