Project Kotlin Moves On
Written by Kay Ewbank   
Wednesday, 16 July 2014

The team behind Project Kotlin has a new milestone release, an open source website and new documentation.


Kotlin, the open source alternative to Java which has been under development by JetBrains since 2010 has reached M8. Much of the work on this release has been to improve Kotlin's overall performance and it also features reflection for properties.

Announcing the new release on the Kotlin blog, Hadi Hariri  says this is “a first peek into the future reflective capabilities of Kotlin”, and that it means you can now access properties as first-class objects in Kotlin.

The team is planning to develop reflection capabilities further in the next few months, with an ultimate goal of providing framework writers with really powerful tools for their needs. The blog post says that things on the agenda include proper Kotlin class introspection, making types available through reflection, bringing reflection capabilities to callable references (::functionName) and more.

The facilities for inlining functions have also been improved, with the addition of support for functions with default parameters, and for inlines into objects.

Support has been added for transient, synchronized and strictfp as annotations, and the semantics are exactly like in Java.

JavaScript support in general has been improved with Data Classes support in JavaScript. This means that you can now get toString, equals and hashCode generated automatically when annotating classes with the data annotation in JavaScript too, as well as in Java. LinkedHashSet and LinkedHashMap are also supported in JavaScript.

Other changes include additions to the standard library with a new slice function that takes an array or list of integers and returns a list containing the elements in said positions; and a join function that combines arrays and lists into a single string. There are a number of improvements and additions to functions.

The IDE now supports IntelliJ IDEA 14 EAP, and the debugger lets you do Smart Step Into. Smart complete has also been improved with better completion for overloaded methods; the ability to complete ::functionNames and lambdas; and in Anonymous classes and constants in when() statements.

Fourteen new intentions have also been added. The blog post says “We love intentions. We believe that they not only quickly help you solve problems, but also teach you and help you discover language and framework constructs.”

The new intentions include DeMorgans Law; Flip binary expression; Split if conditionals; several ‘replace with’ intentions; simplify boolean expressions; and several convert intentions.

The formatter has been improved, the Structure View now shows members of supertypes; and the Java to Kotlin Converter is better.

Alongside the milestone release, the team has created a new open source website and documentation set on a new domain ( by porting all the old documentation site to Jekyll.

The Hadi Hariri says:

“it would make no sense to be developing a language that is Open Source and not having an Open Source web site and documentation.”

The new site is all written in Markdown and hosted on GitHub, and most pages have an Edit Page option so it’s easy to contribute.

The site also has new tutorials and documentation. For those new to Kotlin this 2-minute video is provided to give you a quick Getting Started guide:



More Information

Project Kotlin website

Project Kotlin blog - M8 is out!

Related Articles

Kotlin Goes Open Source

Kotlin - another Java alternative?


To be informed about new articles on I Programmer, install the I Programmer Toolbar, subscribe to the RSS feed, follow us on, Twitter, Facebook, Google+ or Linkedin,  or sign up for our weekly newsletter.



Initialize Your Spring Boot Projects From The CLI

For the lovers of the command line, Spring Initializer Go is a tool with which you can initialize your Spring Boot projects without using the mouse. Is that essential?

Deno Adds Support For Private npm Registries

Deno 1.44 has been released with support for private npm registries and for gRPC connections.

More News


C book



or email your comment to:

Last Updated ( Wednesday, 16 July 2014 )