On 2006.2.19, at 11:40 AM, Peter Gordon wrote:
This is similar to the GNU Objective C compiler, created originally by NeXT, who wanted to release it as a bunch of object files that the user could then link to the rest of GCC. They were also forced to release their code under the GPL because of this.
Somebody participating in this thread suggested that the death of Objective C was an example of the failure of the GPL. I wanted to point out that many people (including myself and many others who use Mac OS X regularly) don't think of Objective C as being at all dead, but I didn't really have time.
I think what we may have is a case of, is the glass half full or half empty? Surely GCC is not as "good" at optimizing C code as iNTEL's closed compiler. And Apple, who makes much of their profits on closed systems, has been no small help in pushing GCC ahead since they recognized the legal necessity of making their Apple Public License properly compatible with the GPL. Some will want to claim that, had Apple had the option of closing the source, they would have had the "freedom" (I guess from the eternal vigilance of bean counters?) to have raced ahead of iNTEL. Sheer fabric of fantasy, IMO, but some people people see things that way and they are entitled to form such opinions. Logically, it's difficult to claim clear justification for any opinion based on what didn't happen.
Still, the fact is that iNTEL has had a huge head start and has the advantage of building the processors that they are optimizing to (and playing tricks to try to keep AMD at bay, while they are at it). And iNTEL's compiler turns out to optimize way too heavily and arbitrarily for Objective C, at least from what I've seen. (Aggressive optimization is one of those operations that is _very_ difficult to get working well in company with delayed semantic binding.)
If the bean counters are too aggressive in their optimizations, I think that rather reflects poorly on the state of the industry more than on the feasibility of a license.