4 ms·
I think it really does boil down to the license: Apple absolutely hate copyleft, so they poured money into Clang. It's sad, really — look how old the bash & em
by zeveb 8y ago
I think it really does boil down to the license: Apple absolutely hate copyleft, so they poured money into Clang.
It's sad, really — look how old the bash & emacs are in macOS these days. And I really don't think that copyleft would hurt Apple: what compiler technology do they want to keep proprietary?
- tzs 8y agoApple started heavily investing in clang and friends because they wanted a compiler suite that was more modular than gcc and that could be used as a library in other things. They wanted to do things like take chains of filters in Core Image and JIT compile them into a single optimized filter that could target the CPU or the specific GPU in that Mac. They wanted to use the compiler's parser as a library in Xcode to handle things like syntax highlighting. Gcc could not do these things as it was at the time. The different parts were tightly coupled in ways to make it hard to separate things out. People had proposed making it more modular but the gcc devs rejected them, with RMS making it clear that the design was the way it was in order to make it harder for proprietary programs to have ways to use gcc's parts. Apple could have forked gcc and changed it to be more modular, but that would have required a lot of changes and a lot of work, and since it would not be accepted upstream they would probably have to do a lot of work every time there was a significant gcc update. It made much more sense in every way for them to go with clang and LLVM, because those were designed to allow the kind of modular, library use that Apple wanted.