Saturday, September 21, 2013

How Many Languages Do You Code?

Released in 1996, Java is now 17 years old. The most recent new trend, is not so much new language features, but new languages altogether! The so-called JVM languages are completely non-Java languages, but they compile down to the same Java byte-code that a Java compiler produces, and so are able to co-exist with the Java ecosystem in a very simple, easy way.

The major JVM languages are:

  • Clojure -- a Lisp for the JVM
  • Scala -- a functional language
  • Jython -- an implementation of Python
  • JRuby -- an implementation of Ruby
  • Groovy -- a scripting language
It's dead easy to call anything written in any of these from within a standard Java program; and the other way around works easily, too -- so from within any JVM language, you can call out to a standard Java program.

This means you can now write in the language of your choice, yet still use any Java-based library or framework.

So, in the Java world, we're all trying to figure out what JVM language to add into our Technology Portfolio. Where do we lay our bets? Which will be the Market Winner? Adding in which new JVM language will augment our career? Which one will get us the higher salary?

These are the questions on the Java developers mind these days. Because it's a large investment of time to learn a new language. Just because I mentioned the major contenders, don't think that there aren't several dozen others!

In my case, I've been laying my bets and spending my time in learning Clojure. But that's another topic for another day. For now ...

I Remain

TheHackerCIO