Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

That's not correct. Apple needed technical things from a compiler that gcc could not feasibly do, and started moving things to LLVM before GPLv3 was released. Even if gcc had been relicensed under a permissive license such as BSD, Apple would have moved to LLVM and Clang.

A couple examples. Core Image needs an optimizing JIT compiler that can take a chain of image filters and turn it into a single efficient filter for execution on the GPU or CPU (whichever will be faster on the particular system for the particular effects). XCode needs to parse C/C++/Objective-C code in the editor and in the debugger.

What Apple needed for these things was a modular compiler system, designed to work as a compiler toolkit from which you can pick and choose the parts that you need for your particular needs. A compiler toolkit that is designed to be easy to interface with outside tools.

Gcc was explicitly designed to not be that. It was only competition from LLVM/Clang that forced some liberalization onto gcc.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: