With the recent 1) frenzy about Kotlin I was particularly curious about its introductory talk at Google's IO, https://www.youtube.com/watch?v=lH5aywLo-Ic&t=9085.
One thing that I seem to miss is what the advantage of Kotlin is in the first place - NOT in comparison to Java, in comparison to Groovy. There seem to be a handful of features which are neither present in Java nor in Groovy 2), but the majority of its features and syntatic "sugar" has been already available in Groovy for the past 14 years (some maybe only for five, if you count since 2.0).
I dont want to devalue Kotlin but at the same time it seems Kotlin is getting a lot of praise for things it literally just copied straight from Groovy 3). Even the speaker briefly acknowledged the similarities to Groovy, https://www.youtube.com/watch?v=lH5aywLo-Ic&t=10426.
Did I miss anything blatantly obvious (apart from 2)) or may we just have yet another hype?
Thanks
1) Referring to Google's announcement to support it natively on Android
2) Non-nullability (within Kotlin's scope at least) comes to mind, possibly static typing (though Groovy does support it)
3) Properties, lambdas, extensions, many syntax elements
But as far as language features support goes ... Kotlin, Ceylon, Groovy, new versions of C#, most of the times the language features are never that far apart (and they definitely do steal all features among each other) and you choose based on library and tooling support, familiarity and popularity.
Kotlin will come out among the top w.r.t. tooling support, because JetBrains will support it in its ide and library support because of its java compatibility. The android announcement pushes its tooling story even further.