Author Archives: Andrey Breslav

About Andrey Breslav

Andrey is the lead language designer of Kotlin at JetBrains.

Kotlin M13 is out!

It’s been a long summer, and we have a lot to tell you about Kotlin M13 (details below): Compiler daemon for faster compilation; lateinit properties to support dependency injection and other frameworks; sealed classes for expressing closed hierarchies; Specifying and … Continue reading

Posted in Releases | 70 Comments

Feedback Request: Limitations on Data Classes

While M13 is approaching, we are planning a little ahead. This is a request for feedback on some future changes in Kotlin. We want to deliver Kotlin 1.0 rather sooner than later, and this makes us postpone some design choices … Continue reading

Posted in Language design | 47 Comments

Modifiers vs Annotations

This is another heads-up and a call for feedback. We have been discussing options regarding Kotlin’s annotation syntax for quite some time already, rolling out experiments, gathering feedback. As we are finalizing the language now, many pain points that we … Continue reading

Posted in Language design | 44 Comments

Gradle Daemon Support for Faster Compilation

We are currently working on improving compilation times. Today we are happy to invite you to try Kotlin 0.12.1230 making use of the Gradle Daemon. It eliminates startup costs, and your builds run faster.

Posted in Tools | 35 Comments

Improving Java Interop: Top-Level Functions and Properties

Kotlin has had top-level functions and properties from day one. They are very convenient in many cases: from basic utilities to extensions for standard APIs. But Kotlin code is not the only client, and today I’m going to explain how … Continue reading

Posted in Language design | 18 Comments

Better Annotation Processing: Supporting Stubs in kapt

We announced kapt, an Annotation Processing Tool for Kotlin, some time ago, and discussed its limitations. Now most of the limitations are going away with the updated version of kapt that is available as a 0.1-SNAPSHOT preview.

Posted in Android, Libraries, Tools | 18 Comments

Fibers and Actors in Kotlin with Quasar

In the previous post we mentioned that the Quasar library now supports Kotlin, providing awesome support for fibers (lightweight threads), Go-like channels, Erlang-like actors, and other asynchronous tools. Our friends from Parallel Universe have published a blog post that dives … Continue reading

Posted in Libraries | 2 Comments

Kotlin M12 is out!

We are happy to present Kotlin M12, bringing some rather important changes and new features: New syntax for annotations and enums More convenient semantics of function types Better smart casts kapt for Java Annotation Processing support Multiple IDE features and … Continue reading

Posted in Releases | 47 Comments

kapt: Annotation Processing for Kotlin

This post is largely outdated. Please check out Better Annotation Processing: Supporting Stubs in kapt As there have been many requests to support Java Annotation Processing, we are working on it, and first results are ready for preview. This is … Continue reading

Posted in Android, Tools | 21 Comments

Advanced Features of Anko

Last week we published a new version of Anko. While the main purpose of this library is creating layouts though a DSL, even the users of XML layouts can benefit from it. Today we are going to talk about such … Continue reading

Posted in Android | 3 Comments