Swift 5 is a major milestone in the evolution of the language. Thanks to ABI stability, the Swift runtime is now included in current and future versions of Apple’s platform operating systems: macOS, iOS, tvOS and watchOS. Swift 5 also introduces new capabilities that are building blocks for future versions, including a reimplementation of String, enforcement of exclusive access to memory during runtime, new data types, and support for dynamically callable types.
You can test the new features and changes in an Xcode playground.
Finally even Apple itself thinks that the Swift language is worth including with OSes:
The ABI is now declared stable for Swift 5 on Apple platforms. As a result, the Swift libraries are now incorporated into every macOS, iOS, tvOS, and watchOS release going forward.
This has been the reason for me to not very actively look at Swift because even Apple itself has regarded the language as beta and unstable so far so why should I implement stuff in Swift and punish my users with increased downloads as the Swift runtime and libs had to be separately included with every app. Furthermore, Swift is just a thin wrapper around ObjC anyway so why bother and just write the solution in ObjC directly.
But now that Swift is finally part of core OS, it is time to reconsider.
>> Swift is just a thin wrapper around ObjC anyway
Nonsense
http://llvm.org/devmtg/2015-10/slides/GroffLattner-SILHighLevelIR.pdf
Swift as a language is one thing but the whole Apple API is implemented in Objc and all Swift interfaces are just a facades to that ObjC API. The OSX and iOS are implemented in ObjC and all libraries are in ObjC and therefore in order to be compatible with Swift, all one can do is to provide a dummy wrapper. Been there done that – more than 3 years iOS app developer experience with both native ObjC as well as “fancy and modern” Swift.
Well, that’s true, but it was not clear what you mean by “Swift”.