I am afraid that is once more apples to oranges.

I’m afraid you are missing the point here. It’s not about better marketing, which I’m sure they will have, but if there was something that Groovy had was “marketing”, either through Grails or Gradle. Still remember people shouting “Gradle or die” in conferences.

The point is that Kotlin has been designed to be fully bytecode compatible with Java bytecode. This means that your instrumentation based libraries will still work on that same bytecode without having to try to figure out if the code is Scala or Groovy and add more complexity to work around it. There are plenty of libraries out there that require this bytecode to stay the same. For example, and I haven’t tried this, but say you create a Groovy Swing application with a file menu in it and run it on Ubuntu, I bet that the menu will fail to be shown in Mac style (on top of desktop).

Groovy has been improved over the years and has taken advantage of latest JVM features. Kotlin is still bytecode compatible with Java 6 which means that will not take advantage of all features yet.

So, there’s room for improvement in all languages, but I for one, am quite pleased that we finally have a industry level language that is bytecode compatible with Java.

In the end, developers should use what makes sense to them.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.