When Objective-C was developed in 86 it was closed source. NeXT purchased it (in 88, still closed), and planed to keep it closed source. Orginal Obj-C would be parsed into byte code to be compiled by the GCC, not directly parsed. GNU didn't agree with this (adding a way to compile byte code).
Eventually The FSF/GNU sued them over this because the Objective-C compiler was simply a modification of the GCC, without code contributed back to the GCC.
Thus, it was open sourced.
As the Clang/LLVM toolchain removes "FSF lawsuits" from possible things that could happen. I think its unlikely we'll see Swift be open sourced.
That toolchain nonetheless appears to be open sourced, so I'm not convinced it stands as evidence that Apple won't open source Swift. (Not that it stands as evidence that they will, either.)
Wikipedia's telling of GNU and Objective-C's history sounds somewhat less combative than yours. According to Richard Stallman, "NeXT proposed to distribute a modified GCC in two parts and let the user link them. Jobs asked me whether this was lawful. It seemed to me at the time that it was, but since the result was very undesirable for free software, I said I would have to ask the lawyer. What the lawyer said surprised me; he said that judges would consider such schemes to be 'subterfuges' and would be very harsh toward them. So I went back to Jobs and said we believed his plan was not allowed by the GPL." There's no suggestion that the FSF ever sued NeXT; Stallman's own description boils down to "We told them they couldn't do that, and they said okay and made it free."
Thus, companies can use the code without giving themselves back. This is why Sony uses BSD based OS on the playstation [3]. Its cheap, they can modify it, and keep what changes they deem necessary.
And yes, I'm aware Apple has given back to the project. But it seems pretty obvious why they don't use the GCC when you consider how hard Apple has tried to purge the GPL from its OS [4]. And the legal battle NeXT had with the FSF/GNU [5].
I stand by, we won't see Apple open source it.
[1] http://en.wikipedia.org/wiki/LLVM
[2] http://en.wikipedia.org/wiki/University_of_Illinois/NCSA_Ope...
[3] http://www.phoronix.com/scan.php?page=news_item&px=MTU1MzA
[4] http://meta.ath0.com/2012/02/05/apples-great-gpl-purge/
[5] http://en.wikipedia.org/wiki/Objective-C#Popularization_thro...
Android doesn't just have the source available; it fulfills the criteria set both by the OSI and the FSF. That you can't make a derivative and pass it off as the original doesn't change that.
And in so doing you might discover the problem.
Where is the Core Data source?
I'm pretty sure it's sealed in a wooden box—right next to the Ark of the Covenant—in that warehouse you see at the end of Raiders of the Lost Ark.* Core Data uses exceptions for control flow: http://restkit.tumblr.com/post/40736602228/dealing-with-core...
* "iCloud with Core Data is a developer’s worst nightmare" http://www.theverge.com/2013/3/26/4148628/why-doesnt-icloud-...
* Apple's documentation is a joke: http://thermal-core.com/2013/09/07/in-defense-of-core-data-p...
* The object graph model is a problematic abstraction for a lot of what we want to do with a persistence framework: http://inessential.com/2010/02/26/on_switching_away_from_cor... (NSBatchUpdateRequest doesn't do me much good since I can't drop support for iOS 7.x, or 6.x for that matter, yet)
I could go on, but you get the idea...
> "You can imagine that many of us want [Swift] to be open source and part of llvm, but the discussion hasn't happened yet, and won't for some time."
- Chris Lattner, LLVMDev mailing list. http://lists.cs.uiuc.edu/pipermail/llvmdev/2014-June/073698....
> Nobody at Apple has expressed any intention to make Swift free. Zero. Zip.
Chris Lattner:
> "You can imagine that many of us want [Swift] to be open source and part of llvm"
So Chris Lattner (who works for Apple) has stated that he, and many others at Apple, want to make it open source. I'm not sure what else you're looking for.
A statement of personal desire on the part of one individual is different from a statement of intention or interest on the part of Apple. Lattner specifically says alongside his personal desire that they haven't even considered open-sourcing Swift.
So what am I looking for? A statement to the effect that Apple will open-source Swift.
I agree, but you asked for the former.
> We literally have not even discussed this [open-sourcing] yet, because we have a ton of work to do to respond to the huge volume of feedback we're getting, and have to get a huge number of things (e.g. access control!) done before the 1.0 release this fall.
If you take Chris Lattner at face value, he is saying the reason the discussion hasn't happened is because they have too much other stuff to do (as opposed to Apple being indifferent or opposed to said discussion taking place).
Also, he said they have stuff to do before the release this fall. That happened, and still not a word about it. I don't see how you can possibly take this "We haven't even talked about it and I can't say when we will" as a declaration that Swift will be open-sourced. It is the opposite. It isn't a firm denial that it will ever be opened up, but it is definitely a denial of any plans to do so.
I never, ever said Swift was going to be open-sourced. My only point is that, despite whatever circumstantial evidence you've cited, Apple has not decided that they don't want Swift to be open sourced.
> Also, he said they have stuff to do before the release this fall. That happened, and still not a word about it.
The fall "release" was incomplete - it didn't ship with Swift support for OS X. Presumably they've been spending the time between the fall release of Xcode 6.0 and 6.1 (which came out yesterday) working on finishing the language. Even before 6.0 was officially released they were already releasing developer previews of 6.1.
Yes, precisely. Apple currently has no intention of open-sourcing Swift. All of the evidence supports precisely what I've been saying. This is why I think it is good to remind them that we want them to decide in the affirmative.
Apple, as a corporate entity, likely has no intention either way right now. Even if it did, Apple rarely broadcasts its intentions. Swift will likely be closed source until suddenly it's not.
Swift and Objective-C are based on LLVM, which Apple has supported since very early on, and which is open sourced itself.
It would be kinda out of character for Apple (the real Apple not the boogeyman Apple which is mostly a straw man) to not release a programming language as open source.
Hell, the core of OS X (and iOS) is open source... they've only kept the UI layer closed source (notice Google has not open sourced their platform- map reduce, page rank, everything related to source they kept closed source. They only open sourced Android to try and be the Netscape Navigator to Apples Internet Explorer (iOS). Note that like Android, Navigator was free. Only after netscape ended did it become firefox, which is open source. Google shares android source, but to be official "Android" you have to license it from google, and that comes with a lot of requirements. So, Android is more properly understood as free)