News

JVM Language Kotlin M13 Released

Software development toolmaker JetBrains has announced a new milestone release of Kotlin, its open source, JVM-targeted programming language. Milestone Release 13 (M13) comes with a new compiler daemon; new lateinit property to support dependency injection and other frameworks; new .class file layout for top-level functions and properties; sealed classes for expressing closed hierarchies; and better type safety for Java interop, among others.

Kotlin is a statically typed language similar to Scala, Gosu, Ceylon and Fantom. It compiles to both JVM byte code and JavaScript. JetBrains, maker of the code-centric Java IDE, IntelliJ IDEA, has claimed that the language is more stable at run time than Java, because it can statically check weak points and supports things like variable type interface, closures, extension functions and mix-ins.

The Kotlin team is working toward the 1.0 release of the language and will continue to focus on JVM support, said Andrey Breslav, the lead language designer working on Kotlin at JetBrains, in a blog post. "The JavaScript back-end will be included," he wrote, "but it will be considered an experimental feature. Because of that, there are few changes affecting JavaScript in this release. We plan to resume work on JS after the 1.0 release is out."

JetBrains began developing Kotlin in 2010 and released it in July 2011 for distribution under the Apache 2 Open Source License. "We know that Java is going to stand long, but we believe that the community can benefit from a new statically typed JVM-targeted language free of the legacy trouble and having the features so desperately wanted by the developers," project lead Andrey Breslav said at the time. The company released the first Kotlin milestone (M1) in April 2012 with a plugin for the JetBrains IntelliJ IDEA dev tool suite.

Breslav noted that the Kotlin libraries are also being actively developed, and the M13 release brings with it a fully functional reflection library, which means "we can now introspect classes, their members, parameters etc.," he said. The standard library gets several improvements, including + and for sets and other collections, and improved delegates for properties.

More details are available on the company blog page, and the language docs page.

About the Author

John K. Waters is the editor in chief of a number of Converge360.com sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS.  He can be reached at [email protected].