Dogfooding Kotlin and M3.1

After releasing Kotlin M3, we immediately started dogfooding Kotlin. Working on KAnnotator — a static analysis tool that will automatically infer nullability annotations for libraries — helps us tremendously at prioritizing issues. As a result, we roll out a bugfix update: Kotlin M3.1 (list of closed issues). We recommend to run it with the latest IntelliJ IDEA 12 EAP.

A few highlights: Continue reading

Posted in General | 5 Comments

Free Kotlin Webinar on Wednesday, October 10th

Join me (Andrey Breslav) and Hadi Hariri in a webinar about Kotlin M3. We will discuss the new features and our plans, give some demos and answer your questions.

The free webinar will take place Wednesday, October 10th at 16:00 CET (Central European Time). Space is limited, please register here.

Looking forward to meeting you there! And have a nice Kotlin!

Posted in General | Tagged | 1 Comment

Kotlin M3 is Out!

Last time I wrote about a new exciting feature in “the upcoming Kotlin M3″. Today, Kotlin M3 is not “upcoming” any more, it’s here. This post gives an overview of the new milestone. Continue reading

Posted in General | Tagged | 23 Comments

How do you traverse a map?

It’s been a while since I blogged last time on Kotlin M2. Now, the hot summer has passed, and M3 will be out very soon. In this post I describe two small features added in M3 that make our lives easier and will lead to simplification of the language.

How do you traverse a map?

Assume you have a map like this:

What do you do to traverse it and handle each entry? Continue reading

Posted in General, Language design | Tagged | 42 Comments

Kotlin M2 is Out!

Some news websites told you that Kotlin M2 was out earlier this week. Well, now we make it come true :)

In the M2 Candidate post I told you about JavaScript and Android support, as well as new Language Features. Now it’s time for more updates, examples and plans.

Proceed to Kotlin M2 Installation Instructions.

A Little More on The Language

The previous post gave an overview of the new Language Features. Here’s a little more: Continue reading

Posted in General | Tagged | 12 Comments

Kotlin M2 Candidate

It’s been seven weeks since Kotlin M1 release, and I’m happy to invite you to try out a candidate build of Kotlin M2! This post gives an overview of the upcoming milestone release along with come usage instructions.

Thank you, M1!

Our M1 build did a pretty good job: got about 800 downloads, and brought extensive feedback in our forum and issue tracker.

Seems like you have had some fun with it, and we are aiming at even more fun :)

What’s new

Continue reading

Posted in General | Tagged | 19 Comments

Kotlin M1 is Out!

Today we are pleased to announce M1: the first milestone release of Kotlin.
Kotlin’s homepage ( 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
  • 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, Continue reading

Posted in General | Tagged | 13 Comments

Kotlin M1 Candidate

IntelliJ IDEA 11.1 has been recently released, and we are happy to announce a milestone candidate build for Kotlin IDE plugin, too. This post gives an overview of what happened over the last month.

Milestone Candidate Build is Ready for Your Evaluation

To install on IntelliJ IDEA 11.1 (Free Community Edition is available here), please follow the instructions from the Getting Started guide. In short:

You can always download nightly builds of Kotlin from our build server or build it yourself from sources.

Now we proceed to a short overview of the New and Noteworthy. Please refer to this blog post for the previously implemented features. Continue reading

Posted in General | Tagged | 15 Comments

Contributing to Kotlin (Kontributing)

As you all know, Kotlin went Open Source two weeks ago. In this post, I give some instructions for prospective contributors and an overview of the contributions we already had.


Contributing to an open-source project is easy:

  • Have a look at our issue tracker to select an issue you’d like to fix.
    • We have a special tag for those issues that seem to be easy for newcomers.
    • We also have an assignee in our tracker, named Kontributor, to whom we assign issues that we are hoping to get contributions on.
  • Fork our github repository.
  • Fix your issue.
  • Submit a pull-request.

BTW, we have already accepted the first pull-request from an external kontributor: Thank you, Sergey! When in SPb, drop by our office to collect a T-Shirt. :)

I would also like to mention James Strachan and Evegny Goldin, who are already Komitters, but not enrolled with JetBrains. Guys are contributing to standard library/KotlinDoc and build tools respectively.

Not really into fixing bugs? Lots of opportunities for you, too!

There are many ways to help Kotlin get better. Here are some examples: Continue reading

Posted in General | 14 Comments

Kotlin Goes Open Source!

We are happy to announce that Kotlin, a modern programming language for Java and JavaScript platforms developed by JetBrains since 2010, has just gone Open Source!

In addition to Kotlin Web Demo, a web-based environment for editing, running and sharing Kotlin programs, we’ve opened access to snapshot builds and source code (under the Apache 2 License) of the following:

  • The Kompiler — Kotlin compiler,
  • Enhancements to basic Java libraries — convenient utilities for JDK collections and more,
  • Build tools — Ant and Maven integration, and
  • IntelliJ IDEA plugin — Kotlin’s native IDE.

We invite you to try Kotlin and give us your feedback, ideas and suggestions. Solve problems proposed on Web Demo and share your solutions with the world.

We are also looking for Kontributors, i.e. Kotlin contributors — brave souls eager to make this world a better place together with us. All Kontributions, from compiler to IDE patches to libraries and examples, are welcome and appreciated. You can start by reading our issue tracker or by just picking your favorite library and making it Kotlin-friendly.

Our issue tracker:
The source code is available at

Note that Kotlin is still under development. You can download snapshot builds here:
Attention: Latest builds of IntelliJ IDEA are required for running the plugin.

Posted in General | Tagged | 56 Comments