Kotlin 1.2 beta has arrived with the ability to reuse the code across platforms along with a native compatibility for Java 9 module system. With the new release, developers can finally reuse the code between JVM and JS and build some interesting modern multiplatform applications.
In addition to the option to reuse code, Kotlin 1.2 beta produces the code for both common and platform-specific parts during the compilation of the project. There is also a way for developers to express dependencies of common code on platform-specific parts via expected and actual declarations. If the declaration specifies an API, you need to type the alias that refers to an existing implementation of the API in an external library.
It is worth noting that the compatibility with Java 9 module forest split packages in the new version. The new version also removes the deprecated declarations in the kotlin.reflect package from the kotlin-reflect library.
Kotlin 1.2 also supports an array of literals in annotations and simplifying coding. Additionally, the new version uses a more consistent syntax. Developers can check whether a lateinit variable has been initialised.