Apple Open Sources The Swift Programming Languageby Brandon Chester on December 3, 2015 1:55 PM EST
Back in June at WWDC 2015 Apple surprised a number of people by announcing that they would be making their Swift programming language open source in the near future. Swift is, in a way, a successor to Apple's Objective-C programming language. It opens up development for iOS and OS X to developers that may have struggled with some of the idiosyncrasies of Objective-C, while also including a number of features that have become common among modern programming languages.
Today it appears that everything relating to licensing has been sorted out, and with version 2.2 the Swift programming language will now be made available under the Apache License 2.0, which is the same open source license used by the Android operating system. With Swift going open source, any member of the community can now propose additions to the language. The project is now available on the Apple Github account, along with some other repositories that are home to supporting tools like versions of the LLVM compiler and LLDB debugger for Swift.
Along with today's announcement of Swift going open source, there are some notices regarding the development of Swift 3. With Swift still being very much in development, Apple is giving developers a heads up that anything they write now is liable to break with future updates and will need to be fixed to support new coding styles, syntax, etc. There are some other announcements as well, such as a new package manager for sharing and distributing Swift code which would be great to see integrated into OS X in the future. Developers who are interested in some of today's Swift-related developments can get more info from the official Swift website.
Post Your CommentPlease log in or sign up to comment.
View All Comments
BillBear - Friday, December 4, 2015 - linkWe've known that Microsoft was working on a Swift compiler since their Build conference back in May.
name99 - Friday, December 4, 2015 - linkAnd how has that worked out for MS? Exactly how many .NET apps run on your average Mac?
Apple aren't doing this for the enterprise market, or to make it easier to port Mac/iOS apps to Windows.
I'm guessing they're doing it essentially to pull into their eco-system (over the next few years) the best young developers. They're hoping those developers will, just for fun, try Swift on Linux, conclude it's actually a very nice language to work in, and eventually decide they'd like to work with it using a full-featured toolset (XCode) and collection of frameworks.
They may be a similar play involved wrt universities, national labs, and suchlike. Those may be populated by individuals who want to write Swift code (and fully expect to do it on Macs) but legal and similar reasons require that any languages they use have to be "open" for some definition of open.
CalaverasGrande - Thursday, April 14, 2016 - linkOSX is based on BSD. You can open up a CLI and use 95% of Unix/Linux commands natively.
Porting to Linux is a gimme, as Linux is open source and well documented. Porting to Windows not so much.
ComeOnNow - Wednesday, May 17, 2017 - linkYou can't be serious, or even know how to spell Mac. MSFT has been the one to leave Apple out constantly. You can't actually care about running any decent development environment if you are on Windows. MSFT having their foot on Apple's throat with their monopoly 'productivity' squite was their entire business strategy really. Leave some important bits out of the Mac versions (where Office originated BTW, since the initial versions were way beyond what MSFT's primitive systems could support) and also threaten to 'remove support' (until Apple had MSFT dead to rights for having copied Quicktime).
taharvey - Thursday, December 3, 2015 - link.NET is stuck in a VM runtime. Swift is native. Swift will have big ramifications in systems and application development. Microsoft's .NET will still be relegated to corporate inter-web solutions like it is now (I run more variety of applications than anyone I know. Don't think a single one is using .NET)
TristanSDX - Thursday, December 3, 2015 - linkLook like Swift is also managed, not native
Brandon Chester - Thursday, December 3, 2015 - linkSwift code is compiled to machine language by LLVM. You may be thinking of LLVM's intermediate bitcode, which is just used for common code generation.
lmcd - Thursday, December 3, 2015 - link.NET Roslyn also can deliver compiled code...
TristanSDX - Friday, December 4, 2015 - linkManaged means that app requires runtime enviroment, while unmanaged requires only OS or just hardware. Intermediate vs native code is other dimension. For example NET Native apps are still managed, with native code.
JoeMonco - Thursday, December 3, 2015 - linkHow exactly does it look like that? It would only look like that to someone completely ignorant of it.