On Monday, Apple's Craig Federighi announced that Apple's Swift 2 programming language would become open source. This decision will have spectacular consequences for the whole software world.
Apple's Swift programming language is designed to be fast, less syntactically complex, less ambiguous and thereby more secure. However, to date, it has been restricted to iOS and OS X development. Of course, that's not a bad thing, and Swift has walked the fiery coals of any language used for mass mobile app deployment. That's a great opening act.
The problem with Swift, to date is the same, however, as Objective-C. One must be using a Mac and Xcode. That's fine if all one is doing is iOS or OS X app development. But it doesn't exactly lend itself to other platforms.
By taking Swift open source (with compilers and libraries) for Linux (and OS X) by the end of the year, Apple will enable important scenarios. No longer must a student have a Mac to write Swift 2 code in the Xcode IDE. Instructors can load the language onto inexpensive and pervasive Linux systems in schools so that the language becomes just about universal. Popular Linux IDEs like Eclipse can be used. Teaching Swift, already attractive to young students, will become instantly more pervasive.
Another scenario is the use of Swift for technical and scientific uses that demand ease of use, clarity of expression, speed, reliability and security. After all, how much enterprise and scientific code is written in Objective-C? Very little. The case is made right there.
Apple's Craig Federighi introduces new features of Swift 2.
By taking Swift 2 open source, developers on the Linux platform will find it easier to write more secure software. That's because Swift has some of its roots in Haskell, a computer language designed to be very strongly typed and very unambiguous to the developer. It's always important for the developer and the compiler to be on the same page as it were.
Businesses and technical organizations who saw Swift, like Objective-C, to be "an Apple specific thing" will be drawn to the intrinsic advantages of the Swift language on Linux when Java and C++ aren't appropriate. This energy and broad acceptance in education and industry will, in turn, make the Swift 2 language more robust for use on all platforms, especially Apple's.
During Monday's WWDC keynote, Apple's Senior Vice President Software Engineering, Craig Federighi, said:
"We think Swift is the next big programming language. It's the one we will all be doing application and systems programming on for twenty years to come."
And by "all" he can confidently mean "everyone in the technical community." Taking Swift 2 open source ensures that bright future for this important programming language.