Kotlin upgrade brings experimental features

Kotlin 1.3.70 release offers no major new features, but adds a number of experimental new functions to the standard library

Kotlin upgrade brings experimental features

A new upgrade to Kotlin, the JetBrains-created statically typed programming language for JVM and Android development, puts an emphasis on improving existing functionality in areas such as the standard library while not adding new features.

Highlighting the Kotlin 1.3.70 release, which became available March 3, are experimental enhancements to the standard library. One such enhancement is ArrayDeque, a generic data structure described as useful in many algorithms and applications.

The Kotlin standard library also adds new functions and classes for Kotlin collections, all in an experimental state. StringBuilder functionality was added to the common expect class, with the corresponding implementations on different platforms. Developers can use StringBuilder from common code. Also in the standard library, some basic useful members of KClass no longer need a kotlin-reflect dependency on the JVM.

[ Also see: Why Kotlin? Eight features that could convince Java developers to switch ]

Instructions on getting started with Kotlin 1.3.70 can be found on the project website. Elsewhere in Kotlin 1.3.70:

  • The Kotlin/JVM compiler can now generate type annotations in bytecode for Java 8 and subsequent targets.
  • For Kotlin/JS, which compiles Kotlin code to JavaScript, the JavaScript target receives significant optimizations in terms of bundle size and adds “quality of life” changes in the way dependencies, resources, and tests are handled. NPM dependency declarations and new docs are featured.
  • Quicker compilation and debugging for Kotlin/Native.
  • Improvements have been made to using Kotlin scripts with the IntelliJ Idea IDE and Kotlin command-line tools. Kotlin code completion has been improved in IntelliJ as well, with completion suggestions including functions declared in objects, including extension functions, object-level overrides, and functions declared in nested objects.

Copyright © 2020 IDG Communications, Inc.

How to choose a low-code development platform