New compiler and WebAssembly support feature in updated Kotlin roadmap

Roadmap

The Kotlin team at JetBrains has updated its roadmap for 2021 and beyond, with highlights including the new Kotlin compiler, support for WebAssembly as a target, ways to improve IDE performance and stability, and more.

Announced on the Kotlin Blog, the new road map lists the priorities for the Kotlin team for the immediate future as they work to enhance the open source programming language designed for compatibility with the Java ecosystem.

Of the nine highlights listed on the blog by Egor Tolstoy, lead product manager for Kotlin, the chief goal is a new Kotlin compiler. According to Tolstoy, this is “a huge project that consists of rewriting the JVM and JS backends together with the frontend to the new architecture.”

However, once completed the new compiler is expected to bring significant performance benefits, enable plugin API support, and make it easier for the Kotlin team to create new language features.

The current status is that the new JVM backend part of the compiler is complete, but the new compiler frontend is required for the performance boost. The team is said to be getting close to an alpha release, but this will support only the JVM target and initially work only on a specific subset of projects.

The second feature on the roadmap is support for “sealed whens”, a long awaited feature with 230 votes in YouTrack, according to the Kotlin team. Once implemented, this will enable the compiler to warn developers in situations if their “when” statement is not exhaustive, which could lead to a compiler error being flagged.

Another item on the roadmap is support for WebAssembly, a portable instruction format aimed at apps on web pages, as a compile target. JetBrains is even creating a dedicated team that will work on it full time, and says it plans to implement basic Kotlin language features, libraries, and basic Gradle support, and add experimental JavaScript interop.

Also listed on the roadmap is improved memory management in Kotlin/Native via a multithread-capable garbage collector implementation, which DevClass previously covered when the firm released details.

Other items listed on the roadmap include improved iOS-related tooling in the Kotlin Multiplatform Mobile (KMM), new ways to improve IDE performance and stability, and additional core library features. For more details, see the Kotlin Blog or refer to the Kotlin public roadmap.