Kotlin is a really good language. I really want it to be my primary language for android development. The only problem I have now is build times. It's about twice as slow to build a Kotlin app than Java app.
Big programming languages are built from big JARs (compiler, runtime, stdlib). Loading those each time in memory is a long process. Using nailgun saves ~10 seconds on my laptop.
Another problem is compiler performance (both Kotlin and Scala compilers compile less statements per second than Javac), but it's not that dramatic.
Finally, dexing languages with runtime (kotlin - ~200KB, scala - more than 1MB) takes time.
For me, the tight Java integration and low learning curve makes Kotlin a good candidate. Also good to have a modern language for all Android versions on the market. The compiler optimizations seem to be great, and their work to support things like Dagger, which modifies code at compile time, also seems fruitful.
For those who want to try it out: There is a small web-based editor with syntax highlighting, compile checking and code completion at http://try.kotlinlang.org/.
It currently runs on 0.11.91.1, but will (hopefully) soon be updated to 0.12.200 (M12). The reference documentation was already updated for M12: http://kotlinlang.org/docs/reference/.
7 comments
[ 3.0 ms ] story [ 20.8 ms ] threadAnother problem is compiler performance (both Kotlin and Scala compilers compile less statements per second than Javac), but it's not that dramatic.
Finally, dexing languages with runtime (kotlin - ~200KB, scala - more than 1MB) takes time.
Luckily, Buck optimizes most of it.
For me, the tight Java integration and low learning curve makes Kotlin a good candidate. Also good to have a modern language for all Android versions on the market. The compiler optimizations seem to be great, and their work to support things like Dagger, which modifies code at compile time, also seems fruitful.
edit: typos
It currently runs on 0.11.91.1, but will (hopefully) soon be updated to 0.12.200 (M12). The reference documentation was already updated for M12: http://kotlinlang.org/docs/reference/.