After the Browser Wars it seems that we are entering an age of the JVM Language Wars. It seems that everybody who has spent a decent amount of time with Java suddenly feels the need to create the "next big language for the JVM", the successor of Java.
The most recent incarnations of this symptom are:
- JetBrains creates Kotlin, a "statically-typed JVM-targeted programming language"
- Red Hat develops Ceylon, a "Java based language, Taking Java to the next level" (Gavins post, wikipedia entry, InfoQ presentation)
Update: @bertolami asks the interesting questions: Will the JVM benefit or suffer from this? Will the Java community benefit?
I wonder if the language landscape on the JVM will present itself similar as the Java webframeworks landscape today... somehow I doubt this, because Java is mostly routed in The Enterprise(tm) nowadays, and The Enterprise(tm) somehow associates Java with their IT-strategy. Changing that strategy is only done at a glacial pace, therefore adoption of new Java languages will only happen in niches and a lot of those niches are already taken by other modern languages.
Update: A nice post about this: Scala, Kotlin, Ceylon... let's start by being honest
Update 2011-11-13: Just extending the list:
- Mirah, a new way of looking at JVM languages
- Eclipse Xtend, a language made for Java developers
This is how it was supposed to be. I recall being at a conference in the late 90's and running into some "Java Evangelist" (that was his actual job title) from one of the big operators. His line was that the Java language was a passing fad and that the really interesting thing was the Java platform. That might be turning out to be true, particularly as no-one trusts Oracle to keep the JCP going.
ReplyDeleteI have appreciated that for the past 10 years I was able to concentrate on Java EE develoment and become an expert in it, as opposed to the 10 years before that where no none language dominated, and I had to divide my time among several languages, and hence could only develop a resonable understanding of any language in particular.
ReplyDeleteNow that Java inofficially has gotten the boot from the community I see myself again trying to find one language worth investing serious time in to become an expert. The language wars are largely pointless to me, because Java is not missing any particular feature that we NEED to write modern applications.
None of these languages will succeed as the Java heir unless there is serious multi-vendor support behind it. Java became ubiquitous because of Java EE, and that happend because big vendors were giving their support.
Support is only given if vendors can need make serious money with the successor of Java. IBM gave the Java world support by building Eclipse for free so that their clients go buy expensive Websphere Application Servers. The next big thing doesn't need features, it needs multi-vendor support. Otherwise we'll be living on development islands again, one doing Scala, the other Ruby, and the next one Node.js.