4 ms·
His position doesn't make any sense, though. It only made sense as long as LLVM didn't exist, but now that it does, it only hurts GCC. Anybody who wants to inco
by FeeTinesAMady 12y ago
His position doesn't make any sense, though. It only made sense as long as LLVM didn't exist, but now that it does, it only hurts GCC. Anybody who wants to incorporate Clang or LLVM into a proprietary project already can, so absolutely nothing is gained by crippling GCC to make it less useful to those people.
All this is covered in the letter, in fact. If his principles lead him to completely ignore the real world impact of his decisions, his principles are not good ones, and not something to be admired.
- saurik 12y agoI do not believe you can claim that Stallman does not understand the real world impacts of license decisions in complex software ecosystems: the LGPL is an example, which is designed to be used when entering a realm with existing high-quality commercial competition, and in the case of Ogg Vorbis Stallman actually recommended the use of a BSD license as it made more sense as the real battle was against MP3, not between implementations of Vorbis. http://lwn.net/2001/0301/a/rms-ov-license.php3 http://lwn.net/2001/0301/a/rms-ov-license.php3
- FeeTinesAMady 12y agoI'm not saying, though, that he's unaware of the real world impacts. I'm saying that he doesn't care about them (in this case). He is a smart man, and a visionary, and believe it or not, I have a great deal of respect for him, in large part because of how prophetic he's been regarding some of the troubling developments of recent years. That said, he doesn't appear to care about the impact of this decision, which is to drive everyone to clang/llvm. If no one forks gcc to keep it from becoming technically inferior, then in ten years, we'll just have another open source compiler monoculture, but this time it will be clang/llvm. (Edit: forgot an important word.)
- wolfgke 12y agoI rather have the impression that the development of IDEs ran past Mr Stallman - he didn't witness the development in refactoring, code completion etc. since these features are essentially implement in commercial IDEs (which he despises). So he just doesn't know anything about how useful (or not) these features are. He learned and did programming "in the old way" and sticked to that.
- omega_rythm 12y agoIt doesn't have to be like that. I suggested elsewhere in that thread that emacs maintainers should use llvm for what they need, since it can already provide that service. This would require further down the road to have Gcc match llvm feature-wise (except maybe that feature), so that compilation of code accepted by llvm would be possible with Gcc.
- anon1385 12y agoI'm almost certain that RMS would veto the use of LLVM. He clearly views LLVM as an enemy of 'freedom'.
- omega_rythm 12y agoThere's ethic, and there is practicalities. RMS stands by the former, while many engineers think mostly about the later. I wouldn't say that thinking ethically is a bad thing, but it may hamper things, because it usually deals very poorly with a situation already unethical in nature. There are more than 7 billions people on Earth, but barely enough resources to content everyone. Pushing resource extractions will damage the ecosystem, but not doing so will provoke millions of deaths. Preserving nature is a laudable goal IMHO, wouldn't you agree?
- anon1385 12y ago>it usually deals very poorly with a situation already unethical in nature. Allowing code completion and complex refactoring in emacs is "unethical in nature"?
- esrauch 12y agoHe seems to think that gcc could output a incomplete AST that could be used to implement all necessary emacs features without being usable for compiler backends. The other emacs maintainers seem to think that is fighting with one hand tied behind their back.
- omega_rythm 12y agoFor RMS, allowing non free code to be derived from free code is unethical, it goes against all the ideal of his movement. Indeed, from your standpoint, the thing he is fighting against seems trivial, but there are deeper consequences.
- dragonwriter 12y agoFor RMS, non-free code period is unethical, regardless of its derivation.
- zanny 12y agoHis position makes complete sense then, because proprietary software developers you just incorporate Clang and ignore GCC. It might just be the case free software advocates and those who release under the GPL do not want to trade ethics for market share. That is a better situation than GCC being the only show in the house and every company trying to find a way to break the GPL around GCC so they can reuse it without releasing source.
- anon1385 12y agoWe aren't just talking about proprietary software developers using llvm. The projects most hurt by GCC being crippled by design are those like emacs that want to do more advanced things using GCC AST but can't. Emacs is being deliberately harmed to prevent other proprietary developers doing something they can already do anyway. If you are saying GPL advocates believe they are correct to deliberately cripple their software for political reasons, then what kind of lesson do you think that is teaching an entire generation of CS postgrads and academics who are forced to use LLVM for their work because RMS thinks they shouldn't be allowed to do compiler research using Free Software. The damage to mindshare and reputation is huge here. To be honest I'm not sure it's even recoverable at this point. To a lot of people GNU software is turning into "stuff you don't use because it's crippled for political reasons and they want to control what you can do with software". Very morally pure I'm sure, but also suicidal.
- aaron_m04 12y agoIn what way is Emacs being "deliberately harmed"?
- anon1385 12y agoIt has worse code completion and refactoring support for C and C++ than it should have. Emacs users are forced to switch to other tools (like proprietary IDEs or LLVM based tools) when they need to do complex refactoring to c++ codebases. It could be improved (should have been years ago) but RMS has stated that he would block the inclusion of code to do those things if they use a GCC plugin that exports the full AST. This is all discussed in the original mailing list thread and it's why one of the core emacs devs suggested forking.