Year of the Snake: JVM Languages, which would you pick?
"TIOBE declares Python as programming language of 2007" making it the 6th most popular language. According to the Tiobe report increased by over 2%. Python surpassed Perl and has become the "de facto glue language". Python's future looks bright with the upcoming release of Python 3K.
Ruby, by comparison, despite the non-stop hype by enthusiasts has dropped 2.3% and is now the 11th most popular programming language. In the Java world, JRuby comes after Groovy, Jython and Scala. Python is the second most popular language for the JVM (behind Java).
The TIOBE report is not quite sure why Python has increased so much in a single year. Could it be because Ruby hype spawned a greater interests in dynamic programming languages and yet could not deliver the stability and maturity of Python or is it because of the missteps of Perl VM improvements? It is unclear. What do you think?
Python is to programming languages what Rodney Dangerfield is to comedians (I don't get no respect). While Ruby seems to be the meida darling but far from the champ, i.e., Ruby is to programming what Anna Kournokova is to tennis.
Why do you think Python had such a great year? Do you think Python 3K will increase Python's popularity? What languages that run in the JVM would you consider using?
Other "mover and shakers" in 2007 were Lua (from 46 to 16th) and Groovy (from 66 to 31st). Java maintained its top spot (from 1 to 1). C++ fell sharply (from 3rd to 5th).
If I had to choose, I would go for better Java integration and tool support for Groovy rather than focusing on JRuby or Jython. Groovy has all of the features of Ruby but in a more Java friendly syntax. Groovy is a JSR.
Then Python support via Jython since is it a) more popular b) more mature c) has all the features of JRuby d) already most popular alternative language on the JVM besides Java (has been most popular alternative language for 10 years!)
Then Scala since it provides great language features that are not found anywhere else and it augments what Java brings to the table.
|rick hightower||cto of arcMind||blog|
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)