InfoQ Homepage Research What's Your Next JVM Language?

# What's Your Next JVM Language?

InfoQ's research widget has been deprecated and is no longer available.

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.

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

• ##### Redline Smalltalk

by Jeff Heon /

• ##### Only Scala attracted me

by Serge Bureau /

• ##### Please use InfoQ account!

by Paulo Pinto /

• ##### Re: Please use InfoQ account!

by Dio Synodinos /

• ##### Direction of axes are going to confuse people

by Michael Peterson /

• ##### Re: Direction of axes are going to confuse people

by Werner Schuster /

• ##### Not surprised at the Scala results so far

by Vikas Hazrati /

by carlos quintanilla /

by Ted Young /

• ##### Surprised at lack of ColdFusion on here

by James Hull /

• ##### Java 8 definitely!

by Johny Hubbart /

• ##### Ignorance is a bliss

by Serge Bureau /

• ##### Re: Java 8 definitely!

by Nils Kilden-Pedersen /

• ##### Re: Java 8 definitely!

by Johny Hubbart /

• ##### Re: Java 8 definitely!

by Ryan de Laplante /

• ##### Re: Add Redline Smalltalk ...

by Kevin Driedger /

• ##### The surface of the points should be proportional to the number of vote

by Gaetan Zoritchak /

• ##### Re: The surface of the points should be proportional to the number of vote

by Dio Synodinos /

• ##### Confused with 'Language', better usage as 'extended language' or library.

by Jerry Roh /

• ##### Mercury

by Paul Bone /

• ##### Perl6 for the JVM

by Nikos Vaggalis /

• ##### Java 8

by fang jinuo /

• ##### Redline Smalltalk

by Jeff Heon /

Your message is awaiting moderation. Thank you for participating in the discussion.

www.redline.st/

• ##### Only Scala attracted me

by Serge Bureau /

Your message is awaiting moderation. Thank you for participating in the discussion.

It does even much more that I could have wished

• ##### Please use InfoQ account!

by Paulo Pinto /

Your message is awaiting moderation. Thank you for participating in the discussion.

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

• ##### Re: Please use InfoQ account!

Your message is awaiting moderation. Thank you for participating in the discussion.

Working on it. Thank you for your patience :)

• ##### Frege: Haskell for the JVM

Your message is awaiting moderation. Thank you for participating in the discussion.

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

Your message is awaiting moderation. Thank you for participating in the discussion.

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

Your message is awaiting moderation. Thank you for participating in the discussion.

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

Your message is awaiting moderation. Thank you for participating in the discussion.

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.

Your message is awaiting moderation. Thank you for participating in the discussion.

you should include Gosu
gosu-lang.org/

by Ted Young /

Your message is awaiting moderation. Thank you for participating in the discussion.

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 /

Your message is awaiting moderation. Thank you for participating in the discussion.

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!

Your message is awaiting moderation. Thank you for participating in the discussion.

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 /

Your message is awaiting moderation. Thank you for participating in the discussion.

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!

Your message is awaiting moderation. Thank you for participating in the discussion.

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

• ##### Add Redline Smalltalk ...

Your message is awaiting moderation. Thank you for participating in the discussion.

redline.st

• ##### Re: Add Redline Smalltalk ...

Your message is awaiting moderation. Thank you for participating in the discussion.

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

Your message is awaiting moderation. Thank you for participating in the discussion.

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

Your message is awaiting moderation. Thank you for participating in the discussion.

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!

Your message is awaiting moderation. Thank you for participating in the discussion.

>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 /

Your message is awaiting moderation. Thank you for participating in the discussion.

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

• ##### Mercury

by Paul Bone /

Your message is awaiting moderation. Thank you for participating in the discussion.

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

Your message is awaiting moderation. Thank you for participating in the discussion.

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

• ##### Re: Java 8 definitely!

Your message is awaiting moderation. Thank you for participating in the discussion.

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

• ##### Perl6 for the JVM

Your message is awaiting moderation. Thank you for participating in the discussion.

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.

Your message is awaiting moderation. Thank you for participating in the discussion.

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.

• ##### Java 8

by fang jinuo /

Your message is awaiting moderation. Thank you for participating in the discussion.

Java 8

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

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

Is your profile up-to-date? Please take a moment to review and update.

Note: If updating/changing your email, a validation request will be sent

Company name:
Company role:
Company size:
Country/Zone:
State/Province/Region:
You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.