4 ms·
The "right thing" is merging it back into LLVM instead of hoarding it in their private repository. Apple, like many proprietary companies, don't use the public
by gilgoomesh 13y ago
The "right thing" is merging it back into LLVM instead of hoarding it in their private repository.
Apple, like many proprietary companies, don't use the public repository for any working branches, so a meticulous and time-consuming merge back into the trunk (which will have changed on its own in the meantime) is required.
Additionally, since large companies like Apple tend to be magnets for lawsuits, everything the company publishes (even in open-source code repositories) may need to be reviewed by lawyers (or at least more senior engineers) to make sure there's no plagiarism, accidental inclusion of privately licensed code or leaking of confidential information.
- ajross 13y agoSure. But the "right thing" hasn't been done yet, so why are we sitting here praising (!) Apple for not having done it yet? This is the kind of stockholm syndrome that drives me crazy in the iOS world. People have internalized that Apple is a "good guy" that supports open source projects and uses an open source compiler, so suddenly when they don't there is this need to rationalize the behavior. Just stop. They shipped a closed source compiler. That's not immoral but it's not praiseworthy either. They promise it will be open in the future, and I trust that the developers are sincere (though often management has other priorities attached to their time). When it happens, that's when you should praise. Doing it now is just encouraging poor development practices. And let's be clear: from the perspective of open source this is poor practice. It certainly doesn't have to be this way. Itanium and x86_64 both had working gcc implementations months to years in advance of hardware availability. ARM did their part releasing the specs (again, well over a year ago). On the other side of the fence Linaro et. al. have done great work porting gcc to the architecture. But LLVM/clang doesn't support it yet, because the implementation is an Apple-proprietary closed source compiler. To repeat: very much not praiseworthy.