BT

What's Your Next JVM Language?

by Werner Schuster on Nov 27, 2012 |

The slow evolution of the Java language has increased interest in JVM languages.Java 7's brought JSR 292 (invokedynamic and its support libraries) to improve the performance and flexibility of languages targeting the JVM.

It seems the stage is set for companies to adopt a JVM language to raise the productivity of their developers (or at least keep them from leaving for other companies that have adopted more trendy languages).

So if you're evaluating the switch to another language or have already decided, InfoQ would like to know: what is you're next JVM language?

The Languages

In order to simplify this question, we've decided to focus on JVM languages that are: currently actively developed, general purpose, and suitable for enterprise or server side development. We've left out languages like Processing which are aimed at a specific domain (even though they might be general purpose). 

The list can be roughly categorised as

Note: InfoQ is aware that languages are a controversial, touchy subject. If we've left out your future JVM language, feel free to tell us all about it in the comments. 

On the voting widget: pick the languages you're considering or which you've evaluated and arrange them whether you'll adopt them (horizontal) and how much of your code will be written in these languages instead of Java (vertical). 

 

 

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Redline Smalltalk by Jeff Heon

Please consider adding Redline Smalltalk 8)
www.redline.st/

Only Scala attracted me by Serge Bureau

It does even much more that I could have wished

Please use InfoQ account! by Paulo Pinto

I refuse to take place in these research questions until you allow us to use the InfoQ account.

Re: Please use InfoQ account! by Dio Synodinos

Working on it. Thank you for your patience :)

Frege: Haskell for the JVM by Michael Bradley

Although it's little known at this time, I believe that Frege deserves an honorable mention:

github.com/Frege/frege

"Frege is a non-strict, pure functional programming language in the spirit of Haskell. It enjoys a strong static type system with type inference. Higher rank types are supported, though type annotations are required for that. Frege programs are compiled to Java and run in a JVM. Existing Java Classes and Methods can be used seamlessly from Frege. The Frege programming language is named after and in honor of Gottlob Frege. While not derived from any existing Haskell implementation, it is more or less equivalent to Haskell 2010."

Direction of axes are going to confuse people by Michael Peterson

I have a feeling you are going to get many voters who don't interpret the graph the way you have it laid out. Having "more" at the bottom of the y-axis and "less" at the top is very unintuitive. I can you tell I misvoted on this axis. I suggest a recount due to hanging chads ...

Not surprised at the Scala results so far by Vikas Hazrati

We have been doing production quality products at Knoldus with Scala for the past 20 months now. Have not been disappointed at all. Good to see the survey analysis supports it as well :)

Re: Direction of axes are going to confuse people by Werner Schuster

I understand, but the direction of the X axis is so that the interesting languages are near the origin of the coordinate system.
By having the direction of the Y axis as it its, it means that the most mature & attractive languages will be clustered in the bottom left quarter (assuming that the best replacements for Java will be used for all the code).

In other words, the further away from the origin, the less attractive the language is as a replacement for Java.

add Gosu by carlos quintanilla

you should include Gosu
gosu-lang.org/

Re: add Gosu by Ted Young

Alas, Gosu doesn't quite meet the requirements set forth: "currently actively developed, general purpose, and suitable for enterprise or server side development." While it's somewhat active, it's not (yet) open-source, and existing Java frameworks can't always be used due to incomplete annotation support.

Surprised at lack of ColdFusion on here by James Hull

Hi, it may be due to the fact that ColdFusion originated as a standalone language pre-Java but since around 2006 (if not earlier) it has been based on Java and runs in a JVM.

There are open source options for CFML engines as well, e.g. Railo, Open BlueDragon, Smith etc and these tend to be implemented in Apache Tomcats, JRun or Jetty.

Java 8 definitely! by Johny Hubbart

I will definitely write all my code in Java 8. I don't see the big attraction of swapping to trendy languages every year orso. In 2006 it was suddenly Ruby, then Groovy became the hype. Last year it was Scala, and this year I don't even know what the biggest most hyped language is?

Will it be Ceylon next year? Will everybody who just started to rewrite everything in Scala, move to Ceylon?

And about Ceylon, like Java 8 it's also not done yet.

Ignorance is a bliss by Serge Bureau

Java has no interest, only it's libraries, and they are available through the JVM.

To develop slowly, Java is extremely good.

Re: Java 8 definitely! by Nils Kilden-Pedersen

I doubt it. Scala continues to gain traction and appears to be making the right trade-offs.

Add Redline Smalltalk ... by James Ladd

Please add Redline Smalltalk as a language designed for the JVM.
redline.st

Re: Add Redline Smalltalk ... by Kevin Driedger

Please add Redline Smalltalk as smalltalk is still the best language for rapid development ( redline.st )

The surface of the points should be proportional to the number of vote by Gaetan Zoritchak

The chart is confusing.

For example is you compare today, java8 has 631 votes and JRuby 288 votes. But when you look at the chart, it seems that jruby is a 4 times smaller than java8. Which is not true. To be fair you should correct that point.

Cheers,

Re: The surface of the points should be proportional to the number of vote by Dio Synodinos

Hi Gaetan and thanks for the feedback. We can't go 100% proportional because that would create unreadable entries for the corner cases (too big/small). If you're interested, plz ping me on research@infoq.com and I can share with you the exact drawing algorithm and you can send me your feedback. Cheers!

Re: Java 8 definitely! by Johny Hubbart

>Scala continues to gain traction and appears to be making the right trade-offs.

Scala is so last year! Next year all the cool guys will be on XTend, or was it Kotlin, or perhaps Ceylon? Sorry, I keep losing track...

Confused with 'Language', better usage as 'extended language' or library. by Jerry Roh

if it's not pure java, it's more adequate to use it as 'extended' or 'plug-in' or other.

Mercury by Paul Bone

Mercury is a logic/functional programming language (for general purpose programming) designed for use for large systems and large teams. It has multiple backends for C (two backends), JVM, and .net. These backends are not different implementations of the system (as Python Jpython etc are) but different options for the single system. See mercurylang.org

At www.missioncriticalit.com we use Mercury (with C, Java and .net) to write server-side enterprise software. For us, Mercury provides features that assist in writing reliable software, to the extent that we offer an explicit warranty on our software.

Re: Ignorance is a bliss by Lanre Adewumi

With millions of Java developers around. How do we explain the no interest argument ?

Re: Java 8 definitely! by Ryan de Laplante

+1, totally agree. Java 8 for me too.

Perl6 for the JVM by Nikos Vaggalis

The Rakudo compiler has been successfully ported to the JVM and there is a big push for getting a stable release out.
Rakudo on JVM Progress Update goes through the latest developments

I'm a bit disappointed to see ColdFusion (CFML) overlooked here. by Brad Wood

I'm a bit disappointed to see ColdFusion (CFML) overlooked here. Even though it started as tag based and written in C++ back in 1995, it was released with a full rewrite in Java back in 2002 (Before Scala was even officially released) and has matured to a modern scripting language featuring Java interop, closures, dynamic typing, and OO patterns. It is regularly updated, open source (via Railo) and embedded in government and enterprise more than people realize. I consider CFML to be one of the first big JVM languages and just as popular as Groovy, Scala, Clojure and jRuby. (On the Tiobe index, Scala is #42, Groovy, Clojure and CFML are in the #51-#100 list, and jRuby doesn't even rank. CFML would do even better on Tiobe if they'd stop stubbornly refusing to use "ColdFusion" as a search term) CFML remains a highly useful and productive platform and it's a shame so many refuse to recognize that.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

25 Discuss
General Feedback
Bugs
Advertising
Editorial
InfoQ.com and all content copyright © 2006-2014 C4Media Inc. InfoQ.com hosted at Contegix, the best ISP we've ever worked with.
Privacy policy
BT