Will Swift 5 be shipped in iOS?

The Swift Evolution README for Swift 5 states Swift CAN be embedded into an OS:

ABI stability enables OS vendors to embed a Swift Standard Library and runtime in the OS that is compatible with applications built with Swift 5 or later.

And we heard this in the recent WWDC ‘18 State of the Union but is there a confirmation about a release of Swift 5 being shipped in iOS when it is released?

What you mention is true. Since the binary interface the programs written in Swift isn't set in stone yet, you can't currently guarantee a specific interface. This means that if two binaries wanted to use one another, they should be compiled with the same toolchain.

Nowadays that means that if you make a Swift application, you embed the standard library with it -- otherwise, the system can't give you a standard library binary that you're sure your program will know how to use.

ABI stability means settling on a specific interface. This will allow, among other things, to call into Swift binaries provided by the OS knowing the interface they will expose. And this lets, specifically, Apple to do this:

Though afaik there hasn't been a "confirmation" per se... shipping it in iOS has been the plan all along :slightly_smiling_face:

2 Likes

And a hard requirement for Apple to start writing system libraries in Swift.

2 Likes

On the contrary, macOS Mojave already ships some system libraries written in Swift, though they're private of course: there's CreateML.framework, CoreKnowledge.framework, ConversationKit.framework, and FMClient.framework.

1 Like

I'm sorry, I meant public system libraries.

1 Like