Comment Re:iAD (Score 2, Informative) 263
I guess that was the point I was trying to make. SJ is as much a "threat" to free software as RMS is. If everyone in the world released their software under the GPL, would we have a truly "free" software ecosystem? No, because would still be restrictions that you have to play nice with. That's OK, but I don't think its fair to villianize SJ on the grounds that Apple wants to control its own platform.
Objective-C is an open language and compilers are available through GCC and CLANG. Apple has had a history of always contributing their work on Obj-C back to GCC, and now with the LLVM project they're doing a whole new Open Source compiler infrastructure that is GCC-compatible, but produces better results. This is available to the Mac, Linux, Windows, *BSD, etc. In other words, yes, there is a threat that Apple will always wall off its Obj-C implementation. There are similar threats that Oracle could do the same to Java, or Larry Wall could do to Perl, or Linus could do the same to the Linux Kernel, which is to say that there is always the possibility, but right now all signs point to No.
I get your point - I certainly don't want Apple to have anywhere near the amount of control over mobile computing as Microsoft had over desktop computing. It's a different ballgame now, though. I don't think they chose Obj-C out of malice like, say, ActiveX or Microsoft's own Java VM that guaranteed a lock-in to the platform. I think they did it to maintain a certain amount of mobility in a fast-moving market. Apple chose Obj-C because they only wanted to support Obj-C. From their perspective, this is an important choice. It guarantees a certain level of consistency, and the ability to change their entire platform's direction on a moment's notice.
Personally, I think it's going in the other direction. Obj-C is a legacy from the NeXT days and its days are numbered at Apple, at least as the sole language they support on the iPhone. It would be entirely like Apple to introduce a new language that compiles down to the same binary as code written in Obj-C, but is easier to write or learn, or comes with more bells & whistles as a feature of the language itself (e.g. easier to write threaded code). They use Obj-C because that's what their Mac developers know and they wanted to capitalize on that knowledge to get the platform off the ground. Now that the iOS is well and firmly launched, look for them to start branching out to include more features to entice more developers to join.
I keep bringing back the LLVM project, but you should really look at the features that project supports if you want to see where Apple is heading. With that project, they can give devs the option to write code in e.g. Python, and it compiles down to the same bytecode as the ObjC implementation. They're not funding the development of that project out of the kindness of their hearts - I think they have a business direction wrapped up in those features, and they're just waiting for it to mature.