Kotlin 1.8.0 beta introduces experimental functions

Kotlin 1.8.0, an upgrade to the JetBrains-developed, statically typed language for multiplatform mobile, web, and native development, is available in a beta release. The new version introduces experimental functions for the JVM.

The standard library in Kotlin 1.8.0 adds new experimental functions for java.nio.file.path that can recursively copy or delete directory content. Experimental functionality also has been added to TimeMarks, allowing elapseNow to read from multiple TimeMarks simultaneously. Opt-in is required for both sets of new functionality. Kotlin 1.8.0 also stabilizes extension functions for java.util.Optional.

Announced November 23, Kotlin 1.8.0 also adds capabilities such as Gradle 7.3 compatibility but subtracts support of the old JVM back end, with the -Xuse-old-backend compiler option no longer supported. Instructions on updating to the beta can be found at kotlinlang.org.

Other new features and improvements in the Kotlin 1.8.0 beta:

  • Java 19 bytecode is supported for Kotlin/JVM.
  • For Kotlin/JS, the IR (intermediate representation) compiler has been stabilized and set incremental compilation is to be used by default. The old Kotlin/JS back end has been deprecated.
  • For Kotlin Multiplatform, an Android source set layout was added that can be enabled in the Gradle plugin with kotlin.mpp.androidSourceSetLayoutVersion=2. Also, a new naming schema was added for KotlinSourceSet entities.
  • For Kotlin Native, support has been added for the Xcode 14 IDE for Apple development, as well as for the watchosDeviceArm64 target. New annotations are supported to improve Objective-C and Swift language interoperability.

The latest incremental release of Kotlin, Kotlin 1.7.20, arrived in October.

Copyright © 2022 IDG Communications, Inc.

Leave a Reply