Today we are pleased to announce M1: the first milestone release of Kotlin.
Kotlin’s homepage (kotlin.jetbrains.org) provides full details about the language. In this post I give some highlights associated with the milestone release.
What’s in the box
Kotlin comes in form of a standalone compiler and a plugin for IntelliJ IDEA.
- IntelliJ IDEA Plugin
- Kotlin has graduated to the official plugin repository!
- Standalone Compiler (download here)
See the Getting Started guide for details.
Standard library
Kotlin’s Standard Library provides many useful functions, including enhancements for existing Java APIs. For example, it enables bulk data processing with map()/filter()/etc available on collections:
val minors = users.filter { it.age < 21 }
Or you can simply read text from a java.io.File:
val text = file.readText("UTF-8")
And even java.util.concurrent becomes nicer:
myReentrantLock.read {
// read your data
}
See the Standard Library API documentation here.
Build tools
We have significantly improved Kotlin’s Maven Integration.
First of all, Kotlin’s maven artifacts are now published in repository.jetbrains.com.
Find the instructions for building Kotlin projects as well as mixed Java/Kotlin code here.
You can still use Kotlin with Ant and Griffon, of course.
What’s new
Here I’d like to point out one improvement: the IDEA plugin now does very rich semantic highlighting that can be tweaked in the Settings dialog:
For the full list of changes, please see the commit history on github and the closed issues in YouTrack.
The previous post provides some details on the following features:
- JDK API enhancements
- Code completion for extension functions
- KDoc — API documentation generator for Kotlin
- GitHub support
- Annotations
- Multiline String Templates
- Simple Enums
- Local Functions
- “Assert not null” operator (!!)
- Byte code viewer
Many thanks
Working on a cool project is a lot of fun, but working with great people is even better. I would like to thank our team at JetBrains, JetBrains guys who are not on the team, but still help us as well as the external contributors who make Kotlin move even faster, namely:
- James Strachan: Standard Library and KDoc
- Hiram Chirino, Franck Rasolo, Mark Petrovic, Taro Nagasawa: Standard Library improvements
- Sergey Lukjanov, Stephen Milligan, Oleg Kunov: IDE improvements
- Danno Ferrin: JVM back-end bug fix

Good news! I have downloaded the newest version, It’s awesome.
Thanks for the great work!
Great! I’m anxious to try it out. Could you fix the code snippet formatting in the online documention? Newlines in the text are not included (or something) and the code appears mostly on one line which obviously makes it very hard to read. I am using IE7. For example, the code example on this page is displayed as 8 lines.
IE support is on the way (for now, you can use Chrome or FireFox)
Thanks! I’m eager to get started with Kotlin as a main language
Andrey, are there any plans on Android support?
Yes, there’re are. Some users report that basic Kotlin code runs fine on Android now.
Great, this is best news of this month for me. Thanks guys.
What is the status of the javascript backend for this release? And also do you have any release date for the final product, i.e. version 1.0? Is this happening this year or in the next few months?
The JavaScript back-end is working, but the IDE UI and other tools do not provide access to it yet. This will be fixed pretty soon.
On the release date: no, we don’t have a date for 1.0, because we think that a language is ready for a release after massive validation, i.e. production use. So, JetBrains is going to use Kotlin in production for a while, and only then release a 1.0. Of course, a stable beta will be available earlier.
I think you have a great opportunity here if you can make the Javascript backend supported fully.
With it working I see no use for Google Closure, Coffeescript and lots of other projects.
Please grab that opportunity.
We will. Thanks
Yes! Full Javascript support would be great. The world is craving for a modern statically typed language compiling to javascript with an great mature IDE.
What about compilation speed? Have you measured it (comparing to Java and Scala)?
To measure compilation speed properly we’d need a big Kotlin codebase that does not exist yet. Some micro-measurements show that there’s quite some space for improvement in compilation speed, and we are working on it constantly. To date, no language feature seems to be a performance blocker in Kotlin, though many optimizations and a lot of profiling work is to be done.