News for hackers. Stuff that matters.
Re:No GPL Apps for Apple's App Store by saurik on Saturday January 08, 2011 @08:55PM (#2084565)
1) a/b: The original poster explicitly stated "on Apple's open source website", to which I also explicitly limited my statements.

1) c: Unfortunately, this is not generally true: Apple keeps an internal fork of WebKit that has numerous abilities not in their public trees, which happens to be why Android and WebOS both have totally incompatible mechanisms for adding multi-touch support to JavaScript despite iOS having been out with that functionality for years prior.

To be quite explicit, I dare you to find and recompile WebKit for iOS. Mobile is where all the action is these days, and Apple knows that: deal with it.

2) All but one of the previous gcc contributors from Apple are no longer allowed to read the gcc-patches mailing list, and they are also not allowed to work with any code from gcc 4.3+: Apple is now permanently locked at gcc 4.2 and cannot even backport changes from gcc 4.2.2 (as this was re-marked as GPLv3 when it was released). This is a serious /serious/ problem for Apple, as they /need/ a compiler.

3) I don't understand in the slightest why improvements to the debugger, an external analyzer, or better syntax completion in the IDE, have anything at all to do with the core compiler.

4) I'm sorry, but this has been my impression as a toolchain integrator and distribution vendor. LLVM, which only even supports two platforms (although having seriously broken semi-support for ARM) is often stated to be "catching up" in correctness to gcc, but is not there yet. The opinion that LLVM is somehow epic is something you only hear from incredibly pro-Apple developers. I mean, even Apple's port of gcc explicitly chooses incorrect results occasionally for performance (an interesting specific case being ___divdc3).

5) It is in "final final final draft". Meanwhile, even for C++, Clang doesn't totally work yet. Until just a couple months ago, Clang's website claimed the following:

> However, the implementation of Clang C++ is still somewhat immature, with remaining bugs that may cause compiler crashes, erroneous errors and warnings, or miscompiled code.

AFAIK, this situation has not changed since then, and my attempts to use it recently have, in fact, been met with the compiler crashing out instead of generating any code at all.

Re:No GPL Apps for Apple's App Store by brisance on Saturday January 08, 2011 @11:16PM (#2084784)

  4) I'm sorry, but this has been my impression as a toolchain integrator and distribution vendor. LLVM, which only even supports two platforms (although having seriously broken semi-support for ARM) is often stated to be "catching up" in correctness to gcc, but is not there yet. The opinion that LLVM is somehow epic is something you only hear from incredibly pro-Apple developers. I mean, even Apple's port of gcc explicitly chooses incorrect results occasionally for performance (an interesting specific case being ___divdc3).
In order to keep their user-base on Actionscript/Flash, Adobe was banking on LLVM to get Flash to work on iOS devices before they were legally restricted from doing so. With the lifting of the ban, Adobe can now deploy Flash-based code on iOS devices[1]. LLVM is also used in many other commercial software project, so your argument doesn't hold.

[1] http://www.adobe.com/devnet/logged_in/abansod_iphone.html

Re:No GPL Apps for Apple's App Store by saurik on Wednesday January 12, 2011 @09:15AM (#2096170)
Compilers can be surprisingly "incorrect" and yet still be usable in production. I've routinely been forced to work with compilers that generated incorrect code in numerous situations, and I've simply cataloged and avoided them.

(Interestingly enough, the compiler in question that generated incorrect code so often that I had a catalog ruleset of "things not to do" was llvm-gcc, when I was first deploying Cydia and Telesphoreo to the jailbroken iPhone community. However, that was a while ago, and LLVM doesn't have those shockingly bad issues anymore.)

(It was just a few weeks ago, though, when chpwn started trying to get Cydia compiling with LLVM and kept getting "internal compiler error" on what seemed like some reasonably simple C++.)