

It’s a more pragmatic language, rather than academic/forceful. That is, you can create Kotlin code that is much like the same Java code (without lambdas, no higher order functions, same class/OOP design, etc). It also does not force much of anything upon you like some other languages. And more - see language reference docs.Inlined methods, which make it possible to reduce method counts, as well as optimize methods using lambdas.Ranges and range operator: if (x in 0.10) println("in range!").Properties - no need to write boilerplate getters and setters.Has a button to convert existing Java code to Kotlin too. 100% interoperable with your Java libraries, and even other Java source files in your project.This makes it especially attractive for Android. Target Java 6 transparently, without the same loss of features like you get in Java.String interpolation: println("size is $ out of $ma圎lements").Extension functions (like C# has), so you can extend with static methods and create e.g.

Cleaner syntax than Java (semi-colons are optional new keyword isn’t there, because it’s unnecessary).Lambdas that work well (closures, which Java doesn’t really have).Null-safe types (more compile-time errors instead of always runtime ones).It might be possible to utilize TeaVM as a replacement for GWT, though. This could be fixed in the future by using Kotlin’s JavaScript back-end. If you’re a C# user or appreciate its features, you will feel more at home as Kotlin has many features C# has.ĭue to how GWT works, you will not be able to use the HTML5 target with Kotlin. Kotlin is a modern statically typed JVM language from JetBrains, the creators of IntelliJ IDEA (Kotlin supports Eclipse too).
