Apple has released its , with a stable application binary interface (ABI) and binary compatibility that Apple says will result in the development of smaller applications. Interoperability with other languages is improved as well.

With this upgrade, the ABI is now stable on Apple platforms, so Swift libraries are now incorporated into every future release of MacOS, iOS, WatchOS, and TVOS. Because developers will no longer have to include these libraries, applications will now be smaller and easier to build.

Other new features in Swift 5 include:

Dynamically callable types are supported to improve interoperability with languages such as JavaScript, Python, and Ruby.

Swift 5 defaults to enforcing exclusive access to memory for release and debug builds. This is intended to enhance Swift’s safety.

Swift 5 has a reimplementation of String, new data types, and enforcement of exclusive access to memory during runtime.

In the standard library, String has been reimplemented with UTF-8 encoding instead of UTF-16, which can result in faster code. Objective-C interoperability is preserved.

Swift 5 enhances string literals delimiters to support raw text. Single-line and multiline string literals are enabled and can contain any content.

Unicode properties to support common and advanced text processing are added to the Unicode.Scalar type.

For SIMD (single instruction, multiple data) vectors, the library exposes a subset of operations on the SIMD types supported by most processors in the library.