JetBrains plans to drop some scripting-related technologies from the Kotlin language, including REPL functionality, an obsolete API for Java scripting, the KotlinScriptMojo Maven plugin, and the kotlin-scripting-ide-services library for implementing code completion functionality.
In a November 19 blog post, JetBrains said it would drop these scripting technologies from Kotlin because its research showed that user needs were covered by other technologies already being supported. The scripting-related components and libraries to be removed from the Kotlin compiler and IntelliJ IDEA IDE include:
Default REPL implementations in the Kotlin compiler and IntelliJ IDEA plugin will be sunsetted. The functionality is limited and improving it has not been a priority, JetBrains said. The company will continue to promote the Kotlin Notebook plugin and IDE Scratch files as solutions for interactive Kotlin development. Plans call for keeping some REPL-related functionality in the compiler and the Custom Scripting API. But with a final switch to the K2 compiler, a significant portion of this functionality will be dropped or changed.
Java Specification Request 223, offering scripting for the Java platform. With the original specification having been withdrawn, JetBrains does not believe supporting a de facto obsolete API makes sense. The existing implementation will continue to function until the release of Kotlin 2.3 in the language version 1.9 compatibility mode.
KotlinScriptMojo, a Maven plugin that supports script execution during a Maven build. JetBrains did not find evidence of enough usage to continue maintaining it, so plans call for dropping it in upcoming Kotlin releases.
kotlin-scripting-ide-services, a library for implementing code completion functionality, mainly for REPL implementations. It is currently used in projects like Kotlin Interactive. Because it is heavily based on the infrastructure of the pre-K2 compiler it cannot easily be ported to the K2 version. Therefore, it will most likely stop working around the release of Kotlin 2.3 and will be removed from the code base. JetBrains may consider reimplementing similar functionality on top of K2 in the future.
Kotlin scripting remains an essential part of the Kotlin infrastructure, JetBrains said. The company will continue to support it in an experimental state.