FSF's Richard Stallman Calls LLVM a 'Terrible Setback'
An anonymous reader writes "Richard Stallman has called LLVM a terrible setback in a new mailing list exchange over GCC vs. Clang. LLVM continues to be widely used and grow in popularity for different uses, but it's under a BSD-style license rather than the GPL. RMS wrote, 'For GCC to be replaced by another technically superior compiler that defended freedom equally well would cause me some personal regret, but I would rejoice for the community's advance. The existence of LLVM is a terrible setback for our community precisely because it is not copylefted and can be used as the basis for nonfree compilers — so that all contribution to LLVM directly helps proprietary software as much as it helps us.'"
If the gcc codebase was a bit more reasonable and it didn't require an entire legal team to get permission to contribute to their code, maybe this wouldn't have happened.
In particular, not everyone agrees with his rather narrow definition of "freedom". Some developers like the whole BSD thing, which gives more freedom to the person who uses and implements the software, rather than the original developer. It is akin to the CC-BY license, where you want to have your stuff acknowledged as a source, but you welcome people to do with it as they please.
I have no problem with the GPL, but the zealots that seem to think it is the only way EVAR that is ok and that people who want a less restrictive license like BSD are bad get on my nerves.
so that all contribution to LLVM directly helps proprietary software as much as it helps us.'"
And that is a problem why? THIS is the problem I have with RMS, is that anything that helps OTHER people is considered "bad" even if it helps you, equally.
At some point, actively trying to NOT help others, even if it helps you, is counter Productive to your own cause. BSD license, doesn't harm ANYONE and is "more free" license, compared to GPL.
Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
RMS is right, again. This does erode the GPL advantages.
But, the answer is fairly straight forward and I don't understand why it wasn't done in the first place. LLVM's BSD license lends itself well to being forked into a GPLed fork LLVM(BSD) -> LLVM-NG(GPL) -> -> ->
BSD helps proprietary software AND GPL. QED.
This is exactly the problem with the GPL. Its advocates want everything to be free, and are giddy about the possibility of bringing suit against people who so much as linked to a GPL'd library and forcing their work to be GPL.
It's viral, and not in a good way. Comments like "all contribution to LLVM directly helps proprietary software as much as it helps us" show your cards. Stallman not only is an advocate for free software; he would rather harm or hamstring free software in order to damage proprietary software.
I'm not about to defend the practices of certain large corporations. But in education and medicine, institutional rules over IP forbid many people I know of from even linking to a GPL'd library. For us, if it's GPL'd then it is off limits.
Also, having a friendly non-adversarial relationship with industry is useful and will result in much broader use of your software. For most FOSS projects, exposure and reaching a critical mass of contributors is crucial. The BSD is inherently helpful in this case. The GPL just scares people off, because it asserts control over code you haven't even written just because you decided to use something that happened to have a GPL license.
So, no, Stallman, I disagree and furthermore I condemn your argument as unproductive, wrong, and unhelpful. You might have ground to stand on if LLVM were closed source but it's open - in fact, it's under a more permissive license than the GPL.
Many people started moving away from the GPL with version 3.
If you want news from today, you have to come back tomorrow.
> Except for the multiple paid versions of GCC compilers out there:
> http://www.mentor.com/embedded...
The product you linked to, Codebench lite, is neither proprietary, nor paid.
It's simply NOT a "paid version of GCC compiler", because it's not something you pay for - it's free and you can download the source.
That same company ALSO sells support services and an IDE. They don't sell a compiler.
> http://en.wikipedia.org/wiki/S...
Are you claiming that SNC is a GCC derivative? Citation? The wikipedia article mentions that they ship their compiler, which can be used INSTEAD OF the gcc-dereived compiler provided by the hardware manufacturer.
Absolutely the case. I just find it entertaining that everyone gets so caught up in the how we make our software free that they forget it's still open source either way. Let the dev choose how they want others to use their code and don't worry about it. Do we have to have one license without the other? Can't they coexist peacefully?
Dude, RMS has his issues, but comparing him to Richard Marx? Harsh.
RMS couldn't care less if other companies profit off of his work.
What he cares about is some company taking his work, making it better, selling it back to him and then not letting him hack on it, fix it, port it to unapproved hardware, use it for unapproved uses, et cetera.
Which is only a problem if you actively do NOT want to help proprietary software.
I don't want to hinder proprietary software. I want to boost open software. There's a difference.
Proprietary software has it's place and, in a free market, people will choose whatever is best for them.
As in many things (feminism, sexism, racism, etc.) there are always some people who will champion the cause right through equality and out the other side.
You know what? I don't mind that proprietary software could take something like LLVM, do stuff with it, and sell it. So long as they can't stop ***ME*** taking LLVM, and doing what I want with it.
Historically "Free" software was hard to find and so proprietary was your only choice. From there, I would prefer to have open software which proprietary people can take and use too if they want. Pretty much, nowadays, you can find an open equivalent of just about anything but the most locked-in of protocols/programs.
But what I don't want is to tell everyone in the world they are an idiot if they don't open-source everything. All that does is make people hate you, and think you're an idiot. Instead, let's lead the way and **IGNORE** proprietary software, and put the lobbying efforts towards the choice of freedom, and writing good code.
When their customers realise that there's better software out there, for free, they will have to up their game, or start rolling up their sleeves to help.
We don't have to go around actively attacking them for daring to be proprietary. And we certainly don't have to get all snotty because a piece of software can be used by anyone.
From the post:
Or they believe that the "inconvenience" outweighs the need for those measures -- e.g., the inconvenience is very large or the need is not as great as Stallman believes.
Most of Stallman's post is quite balanced and reasonable. However, suggesting that another group's thought process is defective ("do not recognize" or "do not care") merely because they consider other factors and reach different conclusions than yours is a bit of a cheap shot.
Background reading:
BSD, LGPL, and GPL are all free software licences. The user gets the same four freedoms in each case (use, study, modify, redistribute). But, using the BSD licence (or the LGPL) takes away an incentive to contribute to the free software project.
GCC's technical advances create a big incentive for developers who are interested in compilers, and for companies with a commercial interest in a good compiler existing for their platform, to contribut to GCC - helping free software whether that's their priority or not. With a BSD-licence project, developers can choose to ignore GCC and fork LLVM instead, so neither GCC nor LLVM benefits.
LLVM weakens GCC's ability to attract free software contributors. That's why Apple funds LLVM.
It's not difficult to see which approach works best: Which OS has more contributors, *BSD or GNU/Linux?
Expert in software patents or patent law? Contribute to the ESP wiki!
LLVM/Clang has existed for a while now, and one of the primary motivations behind it was the license, particularly w/ GCC going GPLv3. Suddenly, RMS one day wakes up and realizes that it's not copyleft? That's the very idea!
I am not an Apple fan, but despite his rants, Apple has done a lot for LLVM/Clang, which I daresay wouldn't be where it is were it not for Apple and other proprietary vendors feeding back their changes upstream, despite not having to.
Historically, BSD licensing has created some big problems, with companies taking software, adding major features, and then providing it as part of their own Unix without feeding the changes back into the central tree. It's arguable that overly-permissive licensing terms gave us the extremly divided and nasty Unix market of the 80s and 90s, and that the GPL provided a sort of herd immunity against massively differentiated forks by making it possible to get features back into the mainstream trees in a consistent and timely manner.
RMS has a distressing habit of being proven right, and I wouldn't discount him quite so easily.
For someone who isn't interested in free software or open source, your approach works: go with the flow, everyone do what they want.
The result it that some software turns into a hand-out for companies that, in the long term, are trying to make free software disappear.
If someone wants to be able to more with free software, then there's a question of strategies for achieving this. The user gets the same freedoms from BSD and GPL, but GPL says anyone building on top of the software has to contribute their improvements to the community. Only fair really.
So, yeh, the two can coexist, but the GPL does a lot more to ensure that we have great free software in the future. If you think that's a good thing, then use the GPL.
Expert in software patents or patent law? Contribute to the ESP wiki!
Then use only GPLed software on your computer.
This story is about Stallman complaining because other people don't agree with his vision. Too bad.
The existence of LLVM is a terrible setback for our community precisely because it is not copylefted and can be used as the basis for nonfree compilers — so that all contribution to LLVM directly helps proprietary software as much as it helps us.
Isn't it sad the way he sees this as a loss in the war of "Us versus Them" rather than as a "technically superior compiler" resulting in a bigger pie for everybody?
Well he doesn't just care about technical superiority. He has never claimed that "free software" is important because it is inherently technically superior to proprietary code, or that it will always be more secure.
In fact, the term "open source" was coined during the late 90s dot-com bubble precisely because Stallman has always argued that there are important ethical principles at stake in software development, and some people were worried that this concept of "behaving according to a set of ethics" would sound too much like hippy 60's nonsense. Businesses might be discouraged, and then how would we have got crazy stock market floations, dizzying P/E ratios and Scrooge McDuck-style money baths? Instead they wanted a way to push this growing set of software with revised presentation approach that was value-neutral, and so they came up with the idea that by rebranding it as "open source" and stressing only its supposed technical merits, the men in expensive suits would not be disturbed from their vocation of grabbing as much money as possible.
You might not agree with Stallman's view on ethics - many don't - but it is a little sad to see how much crap he gets even for suggesting that people should stop to consider ethics before reaching for "a bigger pie for everybody".
Right.
FSF doesn't have just an ideology of helping free software, it has an ideology of hurting proprietary software.
Clang and LLVM are technically superior because they've been heavily modularized. FSF actively didn't want to do this with GCC and made it difficult because they wanted to make it difficult for GCC to be used with external tools, which hypothetically, could have been non-free software.
Yes, the LLVM license & design, in contrast to GCC, permits Apple to integrate it with proprietary Xcode, but it also aids tools development from academics and free software writers.
The facts are that GCC was there first, and precisely because of the political attitude of FSF which resulted in technical kneecaps flowing from that, other parties spend lots of money to develop a technically superior, and politically superior product. And today, a proprietary company with enormous bags of money is paying highly skilled people to develop slightly-less free open-source software.
FSF and GCC had its purpose and ideology exposed to the world, a significant community, and it lost. With a more compromising attitude FSF would have found Apple contributing significant resources to GCC--after all it was the original part of NextSTEP and early MacOS development.
I think GCC is very impressive and have used it for decades. Soon enough, though the future will be LLVM.
If GPL is superior, do a GPLed fork of LLVM/clang and beat the BSD licensed version with their own code.
You should be able to grow faster.
You have access to their improvements, while they don't have access to yours.
But then you'd be doing what you criticize corporations for, what you fear being done to LLVM by corporations.
You obviously could, but it feels wrong to me. But if it's freedom you are protecting why does it feel wrong?
"Sometimes it's hard to tell the dancer from the dance." --Corwin Of Amber in CoC
LLVM are only getting funding because Apple wants to undermine GCC.
You need a reality check badly. Apple doesn't give a shit about GCC, regardless of what your self-centered mind might think. They want a compiler that's good for their platform and lets them package it into Xcode. GCC would make this impossible. LLVM makes this possible. That's it. Perhaps if people like you didn't always have this absurd notion that corporations are specifically out to get you (instead of merely focusing on growing their business), you wouldn't be stuck as you are with many GPL projects withering or changing licenses.