Today we launched the open source Swift project along with the Swift.org website. We couldn’t be more excited to work together in an open community to find and fix issues, add enhancements, and bring Swift to new platforms.
Apple’s Swift is open source now.
Swift is made up of a number of different projects, providing a complete ecosystem for building great software. The Swift compiler project interprets Swift syntax, produces diagnostics to help you write correct code, and employs LLVM to generate machine instructions. The LLDB project is a first-class debugger that includes a REPL for interactive programming. And the Swift standard library project includes all the core types and basic functionality you need to write software in Swift.
Today, we released two additional projects for Swift in open source: the Core Libraries project, and a new Swift Package Manager project.
It’s also available on Linux.
As an Objective-C developer I keep my eye somewhat on Swift but still haven’t jumped as I see lots of existing libraries and add-on modules available only in Objective-C. I mean the Obj-C has so extensive history and so much resources available in the ‘net that for me there is no reason to invest the time and effort into Swift (yet) as I can reach my goals very effeciently with pure Obj-C. I would still give Swift ecosystem couple of years to grow and attract more developers before I would consider it a rea replacement for Obj-C. And I would not like to see the situation where I would have to include Obj-C snippets in my Swift code As long as I cannot write an app purely in Swift I would not consider a proper replacement and thats why I am still wait. My employerwould not like the situation where I would spend time doing trial development in Swift just to realize that in the end I still have to implement considerable amount in Obj-C.
After writing a few swift apps I would consider the risk of having to fall back to objective-C for major parts of the app, or even at all, to be very minimal.
Your employer should encourage you to explore and play with Swift. It would be short sighted not to. “Trial development” is important. I don’t blink when my developers ask me for a few days to investigate something. It pays back in spades.
…and now come the pull requests;
https://github.com/apple/swift/pull/17
Nowhere near enough gifs, imho.
LGPL would be a better choice.
Anyway, Swift seems to me like a platform play if you ask me.
Datapoint: IBM may be up to some Linux server stuff with Swift:
https://developer.ibm.com/swift/2015/12/03/introducing-the-ibm-swift…
With the movement of Swift to open source, we’re opening the doors on what we are working on at IBM with Swift. The IBM Swift Sandbox barely scratches the surface of what’s possible.
Swift plays somewhere between Go and Rust in the new crop of modern but “native” languages. Go is easy but (too?) simple/limited, Rust is powerful (and as fast as C) but possibly too hard for “average” programmers. Swift has advanced type system concepts, like Rust.
Apple is doing this to sell more macintoshes.I cant blame them, but macs are selling very well on their own. If Apple would release xcode. that would be great. The closest that you can get to xcode on mac is XOJO (formerly realbasic) I will be studying realbasic until Apple releases xcode or until some other group developers creates a truly visual IDE for Linux that can create code that is cross-platform.
Edited 2015-12-05 17:21 UTC
How opensourcing Swift, or eventually XCode, would result in more sales for Apple Macs is a mistery to me. There are other advantages: making the language more popular/accessible will make it compete in a similar space to .Net and Java.
It is amazing how people can still complain about something that has been made available for free. GPL-ists should compare the current state of Swift with the state of the GPLd ObjC, which fell behind completely and was never really very viable without the closed source runtime library.
Edited 2015-12-06 16:54 UTC
The core language might eventually be free, but the mac related libraries core* won’t be. So there there might be a cloned version of those libraries to do the same thing the real core libraries did. Which are prone to various bugs and issues with being a cloned library. Most development is probably just tying those core libraries together. Even in this early state basic things like strings aren’t 100% compatible.
So yeah, you can use the language on linux. But it won’t be the same level of cross platform ness that Oracle* Java has.
*Oracle Java, because Apple used to make its own variety with all sorts of apple specific bits.
It’s not at all like mono; also you should consider, you know, reading the linked content before posing.
1) The language is free today ( apache license ), not ‘eventually’.
2) The core libraries of Switf 3 are also free and as stated on Apple’s post these same libraries will be used by Apple and across all supported platforms.
Even what he describes isn’t like Mono – any more. And Mono’s implementation of the CLR was 100% compatible with Microsoft’s – in needed to be to run even the most basic stuff.
I was thinking about things like this:
http://www.mono-project.com/docs/gui/winforms/
winforms had to be redone by the mono project to get basic line of business compatibility. Any project that wants swift on linux or windows to achieve that level of compatibility, will need to re do all the core data, core animation, core video, etc libraries in a similar manner that mono did with c#’s windows specific libraries.
Ugh “Core”. There is no way apple is open sourcing the core* libraries. Like core animation, core data, core foundation, core image, core services, core storage, core Text, core video. Not “core” as in basic functionality. And as mentioned before, basic functionality like strings is not working now, because its too tied up in the os layer.
https://github.com/apple/swift-corelibs-foundation
Your right of course that something like core animation will never see the light of day – it’s so tightly coupled to metal at this point – but both dispatch and foundation stuff has been made open.