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.'"
How long until the battle of GPL vs BSD?
*Grabs popcorn*
Not just my way or the highway!!
short pier, long walk, hope you can swim RMS
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.
is preferable to Proprietary Software constructed within obscurity.
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... is RMS admitting that LLVM is technically superior? Or not?
Humanity calls Stallman a terrible setback.
I don't consider something with copyleft to be truly free. Stallman's definition of freedom is forcing everyone to be free. True freedom is the ability to use free software in non-free circumstances.
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.
Except for the multiple paid versions of GCC compilers out there:
http://www.mentor.com/embedded-software/sourcery-tools/sourcery-codebench/editions/lite-edition/
http://en.wikipedia.org/wiki/SN_Systems
just off of the top of my head
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.
I would support a project that forks LLVM but accepts GPL patches.
Sometimes RMS is right, a compiler is a core technology that would actually encourage openness when GPLed instead of BSD.
At least Linux is still under the GPL.
I'm sort of sad to see GCC in decline, but it's a very old compiler.
Richard Stallman is a terrible setback to freedom.
I don't think so because many companies are involved which profit from shared development activities. Addionally, I don't see any profit potential selling improved versions of free compilers.
Copyleft is an outdated concept that was designed to teach companies they should share. LLVM is a direct child of that lesson, companies have learned that sharing is best & have began to share. The very "Proprietary" companies accused of using it to make proprietary compilers are the same ones that helped create LLVM to begin with.
GPL is dated for a time when companies were reluctant to share. It made its point and now it is nothing but a way for FSF/RMS to impose rules on others who would rather be free. Long live the new world where OpenSource is actual Freedom!
...can get a +5 interesting.
Sorry about the mess.
This is like the US saying "A cure for cancer would be a major setback to the US, as it would also enable our enemies to be cancer-free".
New, FOSS software which is awesome is a Good Thing, for the community as a whole. Sure, its license allows people who don't care for FOSS to use it, but surely a net improvement in the community's state of the art can't be a bad thing. If nothing else, this licensure allows people with bigger wallets to pay for improvements which they need, and to have those available to the community too, allowing copylefties more time to work on other things.
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.
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?
I'm starting to think that Richard Stallman is to free software what PETA and the NRA are to vegetarians and gun owners, respectively: Usually there's a kernel of a valid point buried in there somewhere, but the rhetoric is so shrill and overblown that nobody ends up listening for long. All the worse, people start associating all lovers of free software with his level of rhetoric, and zealotry is assumed where none exists.
I'll bite. I do think that RMS has a point about the open source compiler of record being under the GPL, as well as the operating system and other essential build tools and core platform elements. Many people will rightly point out, yet again, that GPL is a pretty aggressive license for most userland software, but when it comes to the platform itself, this aggression seems to be quite desirable. Also, these value statements seem temporally bound to the moment. Maybe in the future we will live in a set of legal and intellectual circumstances where RMS has basically won and that maybe a good thing.
So I wonder he isn't right about it being sad that LLVM is not under copyleft.
Does RMS have plans for how developers will eat if e.g. steals their code and makes it cheaper? Does he have plans for companies which wish to contribute some of their developer time to open source, and some to heavily-invested-in trade secrets? I've been in situations where I wanted to use and contribute to OSS for part of what I did, but couldn't because of copyleft. I wonder if this is why the embedded systems space has such terrible OSS support: the lack of sufficient 'boundaries' between modules in embedded code forces one to be fully infected by the virus or clear of it entirely.
RMS is big on "Freedom", but he wants to deny others the freedom to profit from their intellectual property efforts. He is entitled to his opinions, but I do wish he would explain why others should be denied that freedom.
> 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.
I like to think of it as, why are you doing FREE work for a proprietary company that has no obligation to you other than to possibly hide your name at the bottom of a long list of credits buried in the help menu? This is what the BSD license allows.
If they aren't going to pay me, then I want them to have to contribute back anything they do with my software, which is what GPL requires. THAT is their way of paying me for my time -- that down the road I can save some time by getting help back from them. And not just me, but the entire community gets that help.
If you are ok with that, then who am I to judge? But I don't think it is as simple as "anything other than his way is bad" -- it is more of a question of, does it bother you to do free work for people, or do you not care just because you think its cool? RMS's concern is that it bothers him to put effort in to let lazy people take it with absolutely no acknowledgement and pay, and even worse, prevent you from doing what you want with THEIR copy of your work! It needs to be a 2-way street.
Except that it is not FOSS. It is just open source.
Without the four essential freedoms, software will not be free. At least that is the argument RMS makes.
Most people use a different definition of freedom, but this response is the only response you could expect him to give if you know his principles.
Yeah that was a toe-picking dumb statement.
FOSS helps "directly helps [others as] much as it helps us."
That's kind of the point - cooperation, helping others as well as yourself.
For fifteen years I haven't bought any proprietary software, except once. I contribute to several open source projects, and my name is in the kernel changelog, so I think I qualify as a FOSS advocate. This FOSS advocate thinks Stallman was smoking something when he said that, unless the quote was taken out of context.
People are focusing on BSD versus GPL, but really, the thing to see here is Stallman's definition of "community". If you would ever let your software be used by for-profit interests, you are not part of the community he is speaking of, and claims to speak for. It's just that simple, no flamage or politics implied by saying that.
I've long said that people should chose a license the way they choose a screwdriver, not the way they would chose a religion. What are you trying to achieve? Want total world domination for a new protocol? Go BSD. Want to keep for-profit entities from rent-seeking based on your work? Go GPL.
It's OK to be part of Stallman's community. It's also OK to not be part of Stallman's community. It's OK for RMS to be dissapointed with people who are not part of his community. It's OK for people not part of Stallman's community to not give a rat's ass what RMS thinks.
I'll say this though, the number times I've originally dismissed one of RMS's ideas a crack-pot loony assertion, and then five years later come to see the point he was trying to make, is non-zero.
Stallman is an ethnic Jew and I think we all know that sometimes Jewish folks are given to exaggeration and hyperbole. Listening to Stallman complain about software freedom reminds me of listening to my uncle complain about air travel. Sure, they are right, but oy vey!
> more freedom to the person who uses and implements the software
Users have the same freedoms with GPL and BSD.
The BSD licence provides building blocks for non-free projects that compete against free software. The GPL provides building blocks only for free software projects.
GCC's technical value encourages developers with technical goals to contribute to the free software GCC project, regardless of whether helping free software is their priority or not. LLVM weakens this by providing an alternative project where people can work on technical progress without the need to contribute to the free software LLVM project.
So LLVM makes people less likely to help advance the state of free software.
(LLVM attracts some investment, such as that of Apple, up to a certain point, because Apple's goal is to undermine GCC.)
So it's not about user freedom. There's no difference there. It's about what's the smartest way to help our friends and each other, without helping the companies that are competing against us and trying to replace free software with their proprietary software.
Expert in software patents or patent law? Contribute to the ESP wiki!
RMS is also a 'terrible setback' for the OSS community in their attempts to be taken seriously.
Thank you for sharing your thoughts. However, I don't actually care about your opinion in this matter.
#DeleteChrome
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.
I like Stallman, but it must get a lot more crazy than that to surpass my love about Warren. :)
What a strange post.
You start by asserting a trusim that not everyone agrees with RMS. So? Not everyone agrees with any particular person on any topic.
You then give a rehash of the difference between strong and weak copyleft, as if we needed that.
Up to this point you're not wrong, just rehashing.
But you then say that RMS gets on your nerves for sticking to his belief that strong copyleft is best. Gets on your nerves for standing up for his life's work? Gets on your nerves for standing behind what he believes to be true?
In a way you are like those people who say DS9 is better than TOS/TNG, because it abandoned Roddenberry's principles and defaced the Federation with selfishness and corruption. You _applaud_ when principled belief in good breaks down and moral-less expediency wins.
To hell with your weak, unprincipled expediency.
I fear companies may begin to stop sharing if you remove the precedent.
This is not at all the case. Companies share not because of any precedent, but because it encourages more people to work on the project they are using. Sharing reaps benefits in active developers.
Sharing for companies can be justified on purely selfish reasons alone, which is why it still flourishes without the mandatory compulsion factor of the GPL.
Also companies are fine with doing something because it is right or benefits them, but the legal departments of many companies HATE HATE HATE being told they MUST do something, even if they already are doing that and have no plans to stop. It introduces an unpleasant future obligation they want to part of, even if it's meaningless in practice.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Frankly, the GPS is a contract of indentured servitude to the ideals of RMS. When someone breaks the terms, does RMS go after them? No -- you do at your own peril and expense. And what monetary compensations are you entitled to? At most, you can force them to open source their product and sue for attorney's fees.
So unless you want to force other people to serve RMS' goals and want to litigate out of pocket on behalf of RMS, why should you use the GPL?
Why should a compiler be under GPL? Is there money to be made off the compiler? Are compilers used as internal workings of released software?
Will the author(s) be harmed if someone forks LLVM and uses it in a commercial non-OSS OS Distro?
While the GPL might make sense if you want to release commercially useful code while forcing corporate interests to make their code GPL compatible, for tools and utilities it makes no sense at all in this day of truly social coding where entire companies are founded around the basis of social coding and put their software repos on Github for the world to access, use and fork off of.
And considering the current prevalence of the BSD/MIT Licenses, I think the greater community agrees with this.
he's right. Haven't you populist techno wankers seen enough what corporations will eventually do to you?
It would behove Stallman to admit that his/GCCs insistence on obfuscated/incomplete intermediary representations was never tenable in the long term. If they had just adopted LLVM for GCC-Next when it was offered this wouldn't have been a problem ... in the end GCC had no choice to follow their lead any way with LTO, proving that the argument that it made proprietary backends too easy should have never been used.
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.
RMS's philosophy assumes a zero-sum combative environment for software: "free and uncapitalizable" vs "open-source and capitlistic". He's consistent and clear, but this zero-sum assumption is false. Closed-source innovations have cross-bred with open many times, either via concept or actual code contributions. The ecosystem mingles every time any coder merges their closed-source ideas with open or vice-versa. Freedom in this case lives at the meta level that allows individuals AND a market to thrive. We're not going back to an age where all the drawers of tapes are unlocked for everyone at all times, but where the concepts embedded in the tapes' content crossbreed and multiply. Freedom has thus encompassed RMS's idea (after all, GPLv3 is not prohibited) and that of a market-based economy. His stance that assumes zero-sum reveals a clear dislike for the existance of the market, which perhaps arose from a time when digital commerce could not be envisioned. However, digital-goods are indeed a very large market and that work to create such goods will come from anywhere, free, paid, donated and even (regrettably) stolen. It mirrors the real world, as it should.
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!
Can't help but feel RMS is way off base.
If he truly cared about freedom that he would protest that scripting in /bin/bash is not as free as scripting in /bin/sh simply because it reduces the code's portability by requiring that one has to have the bourne again shell installed.
He would also argue that applications like systemd are not truly free because they put constraints on other parts of an OS and thus limit their portability.
He would argue that changes to various desktop managers that limit their portability makes them not truly free.
However, as all the things mentioned above do not affect GPL software he doesn't say a word.
I strongly agree with RMS on this one.
I also think that the GPLv3 is per se a step up - it might need some detail work, but the general direction is needed due to people circumventing the "user has access and can do what he likes and reproduce the software and install it" idea too much these days.
Proof: Linux used all over the place, BSD used for Apple.
Anything that falls into the tools category really belongs under GPL. Greater good and all that. If you want your work to be able to be taken improved and sold without any of the benefits coming back to you, fine, but the reason that GNU/Linux won is because anything you wanted to let out of in-house use had to go back out.
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.
Nothing, so long as you explicitly acknowledge that as a possibility.
it's not just a possibility, it's my INTENT when contributing to any BSD project.
Here's another reason for you why this is of value. You work at a few companies, you work on proprietary code. Over time, you get really tired of writing some of the same code for multiple companies.
But if you are contributing to a BSD project, you get to use the same code no matter what company you go to. You are in fact contributing to other companies for free, where one of those companies is one that you will be working for. You are helping out Future You as much as anyone else.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Wahhhh the communistic license isn't viral enough.
Are we going to swear off eating apples because they provide the same level of nutrition to Bill Gates? Fuck that: I like apples
I was expecting Richard Stallman to type a statement from his new Macbook Pro saying: "Rock on! I have Balls The Clang, and if I LLVM was a woman and I knew how to have sex with her she would so have my baby."
I will be happy once LLVM is able to compile the Linux source code, then we can finally drive a stake in the heard of RMS's GNU/Linux whining and stick it to the toe-cheese-eater.
Stallman said,
as if that were a bad thing.
He's confusing the promotion of free software with opposition to proprietary software. Those are two different things. The former is a productive activity that helps me as a user. The latter is an uphill battle that doesn't even really need to be fought. The best way to defeat proprietary software is to provide a superior, free alternative.
I like to think of myself as one of the biggest Stallman fans out there. I think he is a visionary, and I totally agree with him that free software is important to a free society and the betterment of the human condition. But holding back from adopting a good compiler because someone proprietary vendor might also benefit sounds like cutting off our noses to spite our faces.
In fact, if, as Stallman says, "sharing with your neighbor" is an ethical imperative, then one could say he's applying that selectively. (I am aware of his argument why this is the right thing to do; I just don't accept it.)
[Sir Garlon] is the marvellest knight that is now living, for he destroyeth many good knights, for he goeth invisible.
Which of the following licenses would be able to maintain most of their conditions in a copyright free world:
1) 3 clause BSD
2) GPL
If your answer is 1) then you're right, since you'd loose 3 intellectual(imaginary) property rights in the absence of copyright vs ahmm a few dozens with GPL.
So yes BSD is a better license given the alternatives (unless you live in a country where public domain is well defined), since GPL would in fact need most current copyright laws and agreements to maintain its current essence.
tl;dr supporting GPL software and whining about BSD is almost akin to supporting the MPAA and whining about indie publishers.
When open-source was first taking off, the GPL was necessary because only a small group of die-hard believers thought it would work. Having the work "stolen" into a proprietary product that successfully hijacks the userbase was entirely possible, and so a protective license was necessary.
Now, open-source is common. Users are aware enough that it's nearly impossible to hijack a userbase - any good features added to a proprietary version will be quickly cloned in the open-source original, and few users distrust open-source software. Companies are rarely afraid to work with open-source projects or release their code, and many see it as an advantage.
The GPL (and similar copyleft licenses) protects the open-sourceness of the project, but it also limits its usability. BSD or similar licenses do not offer similar protections, but also do not have the restrictions. Now that open-source has cultural, not just legal, defenses, GPL is not necessary unless you consider the open-sourceness of the code to be more important than the usability of the code.
And so I think GPL is best treated as a transitional license. In areas of software where open-source dominates, it is no longer necessary. In areas where it faces strong opposition from proprietary software, it remains useful or even essential.
Jesus, that's crazy talk. Apple's interest in LLVM isn't some malicious scheme to undermine GCC. Apple used to support and use GCC, but couldn't upgrade because of the switch to GPLv3, so they decided to invest in LLVM.
BSD gives me more freedom, that is what counts
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.
I think it is a good way to compare both visions, if LLVM (and Clang) surpass gcc in features, quality, users, etc (and maybe in some points already did) this may prove that the BSD way may be more efficient for improving software than the GPL.
Maybe the GCC folks shouldn't have been so complacent, arrogant, and hostile toward their users :-(
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!
Let's see. If they don't care if derivatives wind up in closed-source projects, I'm gonna take a wild leap and predict that they won't care if derivatives wind up in open-source projects.
Proof: Linux used all over the place, BSD used for Apple.
Anything that falls into the tools category really belongs under GPL. Greater good and all that. If you want your work to be able to be taken improved and sold without any of the benefits coming back to you, fine, but the reason that GNU/Linux won is because anything you wanted to let out of in-house use had to go back out.
Micro$oft also used/used BSD...
...the LLVM guys calls GCC "collateral damage" on IRC.
I welcome the GNU-less world.
http://i.imgur.com/PxhSt.jpg
"It's not coded in my exact way, advertising my exact ideals"
"Therefore it is evil and must be stopped at all cost"
"Then we will be free to do things only in my exact way! Free as in freedom; just like American freedom!"
Some code is better suited for open source than other code and there's nothing wrong with closed source stuff using/interacting with open. In fact, the heavier use of it will cause it to get more attention and development that way. Only a lunatic or hipsters completely blinded by propaganda would support copy-left over copy-center.
It's a huge setback in terms of technology as well. Has anyone ever actually tried to use LLDB to debug? I mean really use it? It's a piece of shit. And Apple doesn't make it easy to install GDB, either. They have code signing requirements to run debuggers now, apparently.
First: Read up what is a proof kid.
Second: read up on BSDs/Linux history to understand why Linux is a popstar OS and BSD never gained that status.
Hint: it's about copyright, the very same shit that protects your dear GPL from becoming NIL (and yes BSD too,but there you would only 2 little conditions not dozens)
P.S. I phrased this badly:
> go with the flow, everyone do what they want.
I'm in favour of people doing what they want. The approach I meant to criticise is "everyone do whatever and let's not discuss it, let's just see what happens".
Everyone can and will do what they want, but I'm in favour of thinking about the options. If you want more free software to exist, choosing GPL makes sense.
Expert in software patents or patent law? Contribute to the ESP wiki!
You'll be delighted to hear that for people in the USA and Germany, the process is now just sign it and scan it:
More countries will follow as the legal advice comes in.
Expert in software patents or patent law? Contribute to the ESP wiki!
This is incorrect, as one of the other children to this post said. Stallman, and moreover the entire FSF, has no problem with selling free libre software. In fact, preventing someone from using software for commercial gains would violate freedom 0 (the freedom to use the software for any purpose), as it is a restriction on usage. I really don't get why people keep bringing up this myth that RMS is opposed to commercial interests, as I've never seen a shred of evidence to substantiate it. Maybe I'm wrong and he really does hate commercial interests on principle, but at the very least it doesn't show in the GPL.
I say --- let the people who contribute the code decide what license they want to use. Why does Mr. Stallman insist on badgering people for expressing their free choice?
This is like the US saying "A cure for cancer would be a major setback to the US, as it would also enable our enemies to be cancer-free".
New, FOSS software which is awesome is a Good Thing, for the community as a whole. Sure, its license allows people who don't care for FOSS to use it, but surely a net improvement in the community's state of the art can't be a bad thing. If nothing else, this licensure allows people with bigger wallets to pay for improvements which they need, and to have those available to the community too, allowing copylefties more time to work on other things.
Wat?
RMS wants to remove the developers ultimate expression of freedom and that freedom is to decide how they want to license their software.
This is the problem the LGPL is designed to solve. However, Stallman would say the same about LGPL as he's saying up there - if people I described can link to or use it as I say, "its contributions help free and non-free equally" and he'd be against it.
This attitude does nobody any good.
A couple weeks back, I read an old article by RMS concerning GPL exemptions/dual licensing. He supports it.
GPL with exemptions is really BSD. A finer grained control, perhaps, in that the copyleft owner can pick and choose. Put a price on whoring out FREEdom. FREEdom? More like "show me the money!".
Do you even lift?
These aren't the 'roids you're looking for.
Except that Apple is funding LLVM.
Sort of undermine's Stallman's argument about corporations not supporting the community. There are supporters and there are leachers, both on the individual and the corporate side.
It suits their agenda, and their goal isn't to give a long and fruitful life to free software.
Nor is it their goal to destroy free software. They have supported many free software projects for many years. Yes those projects benefit them, so what? All that matters is if they contribute or if they leach. They seem to contribute.
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.
I wonder if RMS realizes yet that by winning the battle (not making the GCC available for other tools to use) he has lost the war for GCC and ultimately GNU. There are great free software projects, such as Eclipse, KDevelop, and others, that could really use a decent C++ parser. But, if the architecture and license of a core component such as GCC is such that it cannot be used because of a philosophy that prevents the creation of good free software tools, then the battle is lost. If RMS, GNU and the GCC steering committee had reacted fast enough when the problem was apparent, then this could have been prevented. But I'm not sure that they see the real problem with their dogma yet.
the growth in cynicism and rebellion has not been without cause
At this point, what makes you think the US wouldn't act this way?
Your analogy is completely backwards. The equivalent would be "A cure for cancer developed in a BSD country would suck for all the other countries. I don't care if you don't want to leverage to research done in my GPL country but I wish your country switched to GPL for its cancer research as it would guarantee that all countries benefit from it."
While most people are focused on the license conflict (GPL vs BSD) few people seem to be looking at the technical merits of the software involved. I used GCC for around ten years before Clang started to gain some notice in the open source communities. I tried Clang to see how it compared and found it to be a faster, friendly compiler. After some tests and using both compilers side-by-side for a while I switched to using Clang. It is, hands down, a much more pleasant compiler to work with and it doesn't break as much between major versions.
Personally, I'm not overly concerned as to whether my compiler is under a copyleft license or a liberial BSD-style license. Both are open source and that makes me happy. Still, Clang/LLVM is quite clearly the better utility on technical merit and I think that is probably more important to most people.
The problem I see is that Apple and other companies which exploit open source are sitting on huge cash piles and destroying software development as a career. By giving away work that they can use as a weapon against you, you're destroying freedom in general. That's the problem with LLVM, BSD, and other BSD licensed software. The companies which exploit it get rich off of their walled gardens, and turn around and collude to destroy developers' salaries, destroy personal computers (cloud-based Chrome, Apple's App Store, etc), and so forth. Like it or hate it, the GPL is the ONLY reason that ANYTHING is free right now. Without it, there would only be walled gardens talking to closed servers using AJAX.
But LLVM still gets the resources to make free software as a result. Does it matter if there's corporate support or the code is programmed by altruistic (and either poor or overworked) individuals whose souls are not so incumbered by finances?
Linux is essentially developed by corporate sponsored developers, not the individual hobbyists of old. Last I heard the volunteers accounted for about 16% of Linux contributions, the rest coming from employees of one company or another (Red Hat, Intel, IBM, etc). With this sponsorship comes a degree of control, direction. There really is little difference between corporate supported GPL-based projects and corporate supported BSD-based projects. Corporation provide direction to both, the source code is available in both.
I agree that's stretching. Recommending gcc is not selling gcc.
They sell a product that is compatible with gcc. Just like the Core i7 is compatible with gcc. If Intel mentioned "the i7 is gcc compatible", that's selling a cpu, not a compiler.
BSD-licensed software. The only thing closer to supporting complete freedom is public domain.
(He's not named Stall-man for nuthin'.)
No, you cannot lock it up in patents. Once jellomizer, for example, put the code out there, it is "published" and a part of known software. One cannot patent anything previously known whether software or hardware. It has to be new, at a minimum.
have you ever heard of a thing called "paid labour"? it's this novel idea where person A wants something made and pays person B to make it.
How practical this is depends on who is person A. If free software is developed for in-house use ("bespoke" development), person A is obviously the company. But if free software is developed for use by the general public ("off-the-shelf" development), how will person B get person A to pay him instead of paying someone else who got a copy from person B?
Either you believe exactly as I believe or you're an enemy. This doesn't help much.
I'm also reminded that the original gcc development stalled under Stalman's/FSF leadership. It barely made it out of 2.7.x, had a barely usable 2.8 release. The egcs project was born out of the fact that the mainline compiler for most Free UNIX was both broken and incomplete. If he wants people to use FSF code, he has to make them best of breed, or at least close to that. Though he'd hate that the quote came from Steve Jobs, he'd be best to heed "Real artists ship".
It's not the cure for cancer that's the problem, it's more about a basic ingredient that are used to develop the cure for cancer and any other cure you can think of.
Companies that build their medicine (compiler) on gcc are required to release that medicine back to the community. You can see it as a small "fee" for not having to do all the work from scratch, and everyone gains something from it. The company doesn't have to spend so much money/time developing a compiler for their hardware platform, and the community gets the ability to improve it, use it and spread it freely. Win-win.
Companies that build their medicine (compiler) on llvm are not required to do that. This is one kind of "freedom" for sure, but I don't think it will benefit the wider community. Every now and then you'll get a crappy windows-only binary dumped by some company low on development resources (but rich in lawyers and ceo's who wants "to be able to capitalize" or whatever).
So, sure, it's probably a good thing for someone. But not for most people. What frustrates me is that people are so short-sighted. Sure, noone cares today because we've mostly had easy access to a good-enough compiler for many platforms (gcc). I don't even have to read what RMS says to realize that this is a setback. Not for today, but for tomorrow.
RMS is just scared when he starts on his GNU/Linux name rant someone will stuff a CLang/Linux distro down his throat, and they should.
Removing your shackles from one overlord to only to shackle yourself to RMS is not freedom at all.
Sharing is sharing. Tying strings to something isn't sharing, and it isn't freedom.
RMS, you are now, and always have been wrong.
I call Richard Stallman's lack of bathing on a regular basis a terrible setback.
- Zav - Imagine a Beowulf cluster of insensitive clods...
In this impure world, sometimes you have to take what you can get and do your best to improve the world rather than commit seppuku when you find that you can't make the world perfect on your own. An evil that can interoperate amicably with good is better than an evil that can interoperate only with other evil. It's easier to establish good as the standard if you have an ecosystem that allows good. For example, Steam is DRM and DRM is evil, but unlike the walled-garden consoles it replaces, a Steam Machine can switch to GNOME and run a completely free game. Likewise, Firefox for Windows and LibreOffice for Windows allow companies to migrate their work flows from IE to Firefox and from Microsoft Office to LibreOffice, which lets them eventually ditch Windows.
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
Problem with that is if I need a customization/feature/or bug fix in LGPL, I can't modify the original source code and use it in my project.
Yes you can. You just need to make the source code of the modified library available to the end user, and use a mechanism to let the user modify the library and link it to your proprietary secret sauce to produce an executable. This could involve providing .o files of the proprietary part to the owner of a lawfully made copy of the executable or shipping the library as a DLL.
Is a terrible setback these days. He had a point in the past, that time is now over and he needs to get the hell out of the way and stop trying to hinder progress.
---- Booth was a patriot ----
it is also not allowed to statically link LGPL code to non-(L)GPL closed code. You can only link dynamically unless you provide full source.
Where do you get that? As I read the LGPL, you need to provide the source code of the Library and provide the object code (usually .o files) of the "work that uses the Library" (that is, the proprietary part) to the owner of a lawfully made copy of your program.
LGPL itself has restrictions. For example, you have to make sure the end user can modify the library, relink the application with the modified library, and produce an executable. On a PC-like platform, you can satisfy this by making the library a DLL or by providing .o files of the proprietary part. But it rules out use of an LGPL library in a program for a platform that enforces digital signatures and uses hardcoded root certificates, such as iOS, Windows Phone, Windows RT, or a major game console.
...at the complete lack of ability to think straight by most.
The code *IS* the (only?) documentation...
So, consider the full scenario... custom SOC chip, custom
tools, no source code: complete, utter, and total lock.
*THAT* is what people refuse to see coming.
modified. Have you ever heard of the obfuscated c contest? Source code can be as open and available as you want, but good luck being able to read it if its been deliberately obfuscated. So really user's rights to modify it is really just a canard put out there by a "leet" cabal of oscurationists that triumph their abusive licensing schemes on unsuspecting contributors.
No adults listen to that mental nutcase. This is not news, just a rant by a crazy idiot.
If it weren't for the GPL how much of Android would be open source?
:)
(The android project isn't exactly praised for having an open source development model).
How much of OS X is open source? It's based on FreeBSD and lot of other things if I recall correctly, and sure Apple contributes back to many of these projects - but OS X is not an open source platform by any standards.
I'm totally fine with permissive licenses, and uses them a lot, but RMS has a point, the longer down the stack we go, the more important copyleft becomes. Without GPL tivolization would have been a different story.
On topic, I doubt that LLVM is going to completely replace GCC, but competition is good. It keeps us to the standards, and I certainly welcome that
(Along with the nicer API and better tooling)
I'm well tired of rms.
If you truly want 'freedom', then the people who made X should be free to copy{what|ever} the damn thing.
It seems rms's version of 'freedom' is: do what you want with X, so long as i agree to a very narrow definition of what X should do
> undermine's Stallman's argument about corporations not supporting
The LLVM model for attracting funding doesn't scale, and it defeats itself in the long term.
LLVM are only getting funding because Apple wants to undermine GCC. Most projects can't be used in that way, so they can't be of any interest to the Apple category of funders. And Apple's interest in funding the free parts of LLVM will dry up as soon as they (if they ever) achieve the goal of undermining GCC. The LLVM licence allows Apple to switch to a proprietary approach whenever they want. (Although, in reality, they'll continue to contribute the non-flashy bits of code - the stuff they want other people to maintain for them.)
Expert in software patents or patent law? Contribute to the ESP wiki!
Anon coward because I don't want anyone to think I speak for the company I work for in any way.
He's got this reversed.
The company I work for develops a lot of software to sell. We use gcc and we use clang and we use other compilers.
We're doing a lot of internal work to develop code analysis and error checking tools using clang. Some of the work will remain internal only because either it's of no use externally or it relies on stuff we want to keep internal.
However.... the plan is to open source a substantial amount of the work. Just because we're company employees doesn't mean we don't think it's the right thing to do. And we can only consider that because of the clang license. It allows us to release the 75% of the code we are comfortable with releasing. If we were to try to do this with gcc we wouldn't have a hope of revealing any of it because the GPL license *might* require us to release the parts we didnt want to. Our legal department has to look very closely at using GPLd software in the company however it is used let alone releasing it into the wild :)
The GPL license would require us to keep all the stuff we wrote locked firmly away and only used internally. With the clang license it's very much easier to share it "safely" for us.
> Our lawyers have forbidden us to touch anything GPL under any circumstances.
You need new lawyers.
Expert in software patents or patent law? Contribute to the ESP wiki!
From what I can tell, GCC is still the better compiler. It is better supported (lots of things won't work on clang or llvm-gcc) as well. LLVM/Clang tends to compile a bit faster (which doesn't matter unless it's an order of magnitude) while the binaries that GCC produces tend to run more efficiently. There's a nice benchmark comparing GCC 4.7 to Clang 3.1 (in Apr 2012) which demonstrates this.
I'm sure LLVM has been well designed and perhaps can do better with JIT and similar concepts (which you'd have to compare to e.g. GNU Lightning), but GCC is still king. Stallman's complaint is that it's getting attention and therefore it may become better than GCC over time, which he argues would be bad for developers on the assumption that eventually a game-changing feature is released for LLVM that is nonfree and then everybody will be forced to pay for it, a fate that the GPL'd GCC cannot suffer.
Use my userscript to add story images to Slashdot. There's no going back.
http://comments.gmane.org/gman...
Unity? Screw that: XFCE. Slashdot Beta? Screw that: SoylentNews. Australis? Screw that: Pale Moon. UX developers DIAF
That's not as crazy as you make it sound. Perhaps our enemies have a cancer incidence rate that is orders of magnitude greater than ours. Perhaps the US only has one cancer death a year, but "the terrorists" lose millions to cancer every day. Were this the case, then indeed, a cure for cancer would be a major setback to the US.
That's a more accurate version of your analogy. The freedom afforded by the BSD license has value to the users of software, indeed. But it has much greater value to those who would sell proprietary forks. For example, I run OpenBSD. I like that it's open source, and I like that I can do basically anything I want with it, so long as I preserve attribution information. However, I haven't modified the code, and I don't really get any meaningful value from being able to do so and then sell my fork as closed-source software. As a counterpoint, Apple likes LLVM. They've modified it, and they're selling their proprietary fork as XCode. They've found great value in the freedom afforded them by the BSD license. The users of XCode, however, aren't seeing much benefit from the BSD license, because it never got to them. Apple ate it along the way.
I think it's self-evident that the BSD license benefits "the enemy" (profit-generating businesses) more than it benefits "us" (the users of software), which renders your analogy misleading.
Of course, this is a dramatic oversimplification of the BSD vs GPL debate, as there are many more implications of choosing a license than what is detailed here. I'm no GPL fanboi, and I can see why developers would prefer BSD simply to avoid all the legal confusion that comes with GPL. However, to portray GPL as crazy, or senseless, or wrong, is to be quite myopic. There are valid arguments to be made in favor of either license, and the philosophical differences are deeper than many are capable of admitting.
Chuuch. Preach. Tabernacle.
It's annoying to have a slashdot article that is not completely acronymed. For example, the first sentence of this article
could be
or even
You see? Every bit as clear, and less than half the length !
After LLVM slays gcc, the corporations will then cease to contribute so much to the original project, then form an inner circle of other big corps that work on it together for themselves.
You are missing a salient point, that good lawyers wouldn't put you under those contracts.
He invented a boogie-man that doesn't exist. Where is this mythical company taking his work and selling it back to him?
Zealot is as Zealot does...
That is nice to hear. It's actually been a while since I looked into that.
You are missing a salient point, that good lawyers wouldn't put you under those contracts.
You are missing the point of no credible alternatives without such requirements.
How much of OS X is open source?
All of it except for the UI layer.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Because Apple's goal is to undermine GCC
That was never Apple's goal. Remember that Apple used GCC for years.
Apple's goal was instead to have a better development tool, and GCC was a roadblock. It was preventing enhancement of warnings the editor could give, real time feedback as to the code that was being written. It also had a somewhat primitive debugging experience (as much as I like GDB and have used it for many years, LLDB is better).
Apple moved to LLVM not out of any wish to harm GCC but because it was no longer possible to advance without newer and more advanced compiler technology.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Even including things like decompiling and reverse engineering it? Well, colour me surprised, I didn't think Apple would go for that kind of thing!
(... and in fact, they don't. So your freedom as a user has been curtailed.)
And yet for humanity as a whole, even in your cancer argument the BSD license wins out again.
Also remember that Apple basically built clang themselves. They could have kept it completely closed thanks to the BSD license and modular nature of LLVM, but instead they gave it back to the community. They didn't have to, but they did anyway - and they did so rather than license something like Intel's compiler that's comfortably closed-source and quite advanced. That's the spirit of BSD.
You're special forces then? That's great! I just love your olympics!
On the other hand, continuing your analogy, companies that build their medicine on LLVM are far more likely to do so, whereas companies with tons of money who don't use LLVM would instead rewrite just the portion of a compiler that they needed rather than be forced to give away hundreds of millions of dollars worth of work.
Your example only works when the value of the "stack" massively outweighs the value of the "new code" - and even then it only works if there's still a way to monetize that work (even developers need to eat sometimes). Sometimes it works that way, and sometimes it doesn't.
You're special forces then? That's great! I just love your olympics!
Mr. Stallman doesn't have a publicist, a speech writer, or an image consultant; therefore, the way he phrases things can hurt people's feelings. Mr. Stallman has a damned good track record of being correct, though. Sometimes it takes a decade or more for what he says to be proven correct but rarely is he ever completely off the mark.
You can either spend millions of dollars spreading a polished version of your message or be deliberately provocative and offended parties will spread your message for free. If you take a step back and think for a minute, you realize how smart of a man Mr. Stallman is.
This is one thing I don't get about some of the more ardent supporters of weak copylefts. It's fine if someone wants to take my code and make it so no one can see it, but god forbid take it and require that it stay open source.
> undermine's Stallman's argument about corporations not supporting
The LLVM model for attracting funding doesn't scale, and it defeats itself in the long term.
LLVM is a University of Illinois project and was funded and active before Apple got involved. With respect to contributors LLVM seems very much like the Linux kernel, mostly corporate sponsored developers. Last I heard volunteers accounted for only 16% of Linux contributors, the rest coming from Red Hat, Intel, IBM, etc. Your theory of long term defeat due to corporate sponsorship makes no sense. Not one line of contributed code will disappear if corporate sponsorship disappears. The volunteers and academics involved, be they LLVM or Linux, can continue on unimpeded. Their project merely no longer receiving "external" acceleration.
LLVM are only getting funding because Apple wants to undermine GCC.
Apple does not want to undermine gcc. Apple merely wants a compiler that will allow for signed apps. Gpl v2 allowed this, gpl v3 does not. Apple had three choices. Continue with the gpl v2 fork of gcc, switch to gcc gpl v3 and abandon their signed app requirement, or find another compiler. Finding another compiler and getting away from the political drama of the FSF seems the best move. Especially given promising alternatives like LLVM.
Your argument is further undermined by all the interest within the Linux community of getting things to work on the LLVM toolchain.
... and then gcc starts up again. Or LLVM-GPL edition forks from the last public release. I'm not seeing the motive to crush anybody. But BSD is in many ways more business friendly, so I'm not altogether surprised if large corporations use it for collaboration - they have other ways of discouraging freeloading amongst each other.
--- Most topics have many sides worth arguing, allow me to take one opposite you.
Copyleft and non-copyleft free and open source licensing have coexisted for many years. That is not the issue. The issue at hand is the issue one (perhaps inadvertantly) denies by not recognizing the difference between the philosophies of the older free software movement and the younger open source movement and the ramifications of those philosophical choices.
As RMS explains quite clearly in multiple essays (1, 2, 3) the open source movement is (as you say) concerned with a development methodology and not with software freedom. The open source movement was designed by people who wanted to not discuss the ethical implications of losing one's software freedom in their pursuit of speaking to businesses by offering, effectively, gratis labor. Open source proponents are all too willing to do whatever it takes to get their tasks done without regard for the social implications of their choices or endorsements (see "Different Values Can Lead to Similar Conclusions...but Not Always" for more on this); installing, running, and endorsing non-free software and putting effort into developing capable, reliable non-copylefted free software (which helps the proprietors as much as it helps users) are a couple. The Open Source Initiative draws no clear distinctions amongst the many licenses it points its proponents toward, so it's not immediately clear why one would choose, say, the MIT X11 license or the GNU General Public License (GPL). Understanding software freedom makes this distinction quite clear—it's about looking out for user's software freedom immediately and in the long term via ensuring free derivatives.
The older free software movement Stallman started recognized ethical implications to these choices; one of these implications was contributing to those who seek to leverage unjust power over the users by licensing software without the freedoms to run, share, and modify. These restrictions are threats to software freedom. Stallman knew that if nobody defended against these threats the community would be lost because he saw software freedom go away at the MIT AI lab where he worked. So he took steps to prevent the further erosion of software freedom by developing software we're all free to run, share, and modify which nobody could use as a power over another. He did this by making a non-free derivative. This hack in a copyright license is called "copyleft" and is one of the hallmarks of the GPL.
This philosophical difference has practical ramifications, as philosophical differences do. The people who run Apple, for instance, were among the first commercial copyright infringer of GCC when they were at NeXT and NeXT chose to distribute a variant of GCC that supported Objective-C without complying with the GNU GPL (Stallman mentions this in his essay "Copyleft: Pragmatic Idealism"). The FSF informed NeXT this was copyright infringement and the FSF made it clear that they were seeking compliance rather than punishment (as is their choice and their way). So NeXT eventually distributed complete corresponding source code. But Brad Kuhn (who was around the FSF at the time and has considerable experience as a GPL enforcer) has said (around 42m27s) that he thinks Steve Jobs' GPL violation at NeXT was calculat
Digital Citizen
Actually, RMS has made it clear (1, 2, 3) that he is not a proponent of "an open development model" because the open source development methodology purposefully does not talk about the ethics of that choice, ethics which can sometimes create ugly rights-losing ramifications for all computer users (spying, for instance, is a lot more easily done with non-free software). Putting techincal advances in non-copylefted software licensed to respect a user's software freedom helps proprietors distribute proprietary derivatives which makes their spying easier. RMS' older free software movement is different from the younger open source movement on this key point, and there are many practical consequences that come from this key philosophical difference. The essays go into detail on this as does just about every talk I've ever heard RMS give.
I'm not aware of this "force" you speak of RMS wielding against computer users. I'm aware of how RMS uses logical argument to convince people to see things his way, but this is not at all force. Please do provide specific examples backing your (as yet unfounded) assertion.
Digital Citizen
Which OS had IDE support first, *BSD or GNU/Linux?
Which OS had a giant codebase first and version control with commit privileges, *BSD or GNU/Linux?
Which OS had POSIX-violating, data-losing filesystem support for a long time (EXT2 with async) giving better benchmark results?
Which OS had a partitioning system that was based directly off DOS, making it easier to understand the install for DOS expats?
Which OS had CD-ROM distribution first?
Which OS had a media-friendly story of young student creates OS from scratch?
Which OS had a more catchy name?
Which OS had a delay in distribution of a year due to lawsuits from AT&T?
Which OS had a model which made it have a bunch of 'distributions' (really, different operating systems) which allowed it to handle a larger number of developers without hitting some communications bottlenecks, and allowed it to group credit for a bunch of different operating systems which has waxed and waned, but summed to larger sums in total each time?
Which OS was most "raw" in 1995, making people feel like they could contribute and have it be "their" OS, thereby building a larger development community?
Which OS set their story as "the fight against the big evil Microsoft" vs which OS did pragmatically just try to make things work?
Which OS had a developer get a "Programmer of The Year" award for a bunch of low code quality network drivers where somebody contributing a larger number of drivers with higher quality to the other OS got effectively no recognition apart from from fellow developers of the same OS?
Which OS has a better story for binary based updates?
Each of these things - and a myriad others - has contributed in various ways to OS growth, media stores, and developer acquisition and retention.
Putting it all on "BSD vs GPL" is incredibly narrow-minded. More often, somebody has chosen the operating systems for other reasons, and will thereafter defend the license of whatever operating system they have put their effort into.
Actually, you can very easily take a copy of say the current FreeBSD source tree and make it "GPLBSD", nothing in the BSD license stops you from doing that.
Just don't expect the FreeBSD developers to start GPLing FreeBSD, or expecting them to take any modifications you make to your GPLBSD version and try to merge them into FreeBSD (thus 'tainting' FreeBSD with the GPL license). The BSD developers, all they way back to UCBerkley where it originated, have made the choice of the BSD license... and that is their choice is it not? (It should be, if you truly believe in "freedom").
Personally, I would love to see Linux use the BSD virtual memory management... while 2.6's is better, 2.4's totally sucked, and 2.2's was abysmal. I got horribly tired of trying to tweak VM parameters (that seemingly changed every sub-minor version even) to even get 2.4 to perform even 1/2 as well as BSD did. I'm sure it's more complex than that though, since BSD is a different and far more mature beast overall.
Or just work on Clang and not have to worry about all that shit.
Fuck that. This is exactly why people choose LLVM/Clang - do you think the majority of people in the world are in the USA/Germany?
Do you think the majority of Google developers working on LLVM are even in USA/Germany? (Hint: they're not)
Do you think ANYONE in the right mind, is going to want to sign a legally binding document to contribute changes to an inappropriately engineered compiler?
LLVM/Clang you just fork, and submit patches under BSD and you're all good - no signing, no nothing.
Any university, any GSOC student, any company, and any individual in the world can do it in seconds.
... and then gcc starts up again.
Or, since we know from history that this is what always happen, we stop feeding the beast NOW.
Nope, not a game. It was professional DJ software.
I wasn't happy with it and I with with a solution I liked better which was open source.
If one's values dictate one's choices, "choice" is not the issue here; looking at what's going on here in terms of a consumer's choice means forgetting how different people's values are and it's all too easy to let technical considerations seem more important than they are. If Apple does as Brad Kuhn has predicted and eventually stops contributing to LLVM in pursuit of a proprietary fork which they continue to work on (thus encouraging users to use their proprietary fork and its proprietary dependencies), that fork is lost as a choice to those who want software freedom for themselves and others. There are other areas of computing where the available choices are proprietary and thus freedom is not a choice at all. Therefore looking at things as a mere "consumer" (one who is prevented from becoming an equal participant) means reframing the issue away from freedom and toward shallow economic details.
Perhaps you're too young to recall when software was what we'd today call free—users were free to run, inspect, share, and modify all the software they could use. RMS cut his teeth in that environment in the MIT AI lab and all of his work for the free software movement is based in his recognition of that community's demise. Your second sentence above is simply untrue as we can't always predict what users will need and users ought to be free to explore new compilation techniques by working on new compilers (as users of any other software should be free to do). It's not for any of us to restrict someone else's needs in this way so long as their expression of software freedom isn't actually a power over other users as non-free software is by definition.
Steve Jobs' (calculated?) history of GPL violation dating back to NeXT's Objective-C GCC frontend (which RMS mentions) strongly suggest that licensing is a more significant issue at Apple than you're recognizing here. I would like to read evidence of where GCC hackers have not received a "wake up call" about the technical difficulties you refer to so readers come away with some facts to back your assertions.
Digital Citizen
If there is a vault designed to open from the inside if a trapped person can input the vault door's entire microcontroller source code in full, then having the full source code available licensed to GPL will not make that person more free. Yes, he would be able to open the door and step outside, but he was already free before he stepped into the vault and locked the door.
GPL says, please step into the vault and close the door, you are free to leave! I say, you become less free if you choose to step into the vault because GPL is now your mental shackles. You are conditioned to believe you must have GPL or you will be trapped inside a vault. Except you are not, because you do not have to step into any vaults or close the door.
Embrace, extend, extinguish.
The issue here is that Stallman is really the only one that completely "gets" it. He's only one person and he can't be everywhere and do everything. He has a clear and consistent vision but it's not without its subtleties and I don't get the sense there's anyone out there with sufficient understanding that could replace him or even extend his reach. I think we've been lucky to have him around but have the feeling our luck may not hold out indefinately.
Actually, Eric Raymond quoting Chandler Carruth who is allegedly quoting RMS (the closest thing to a relevant source I could find for your undefended assertion) says something different than what you claim:
Non-GPL'd software is not always the same as non-free software and the terms are not interchangeable. There are plenty of free software licenses that aren't the GPL. I doubt RMS' goal was to punish those who choose a license other than the GPL. Quite to the contrary, the GNU Project is very careful to describe the implications of various licenses (including the preservation of software freedom for derivative works via copyleft); RMS wants people to make informed license choices and categorizes licenses descriptively to that end. At the same time, he wants to avoid handing the enemies of software freedom valuable work as this could end up being a force for defeating what he's working to ensure. As he said in one of his talks (from 2013-08-05 at New York University, if I recall correctly), it is seen as shocking these days to act against something you despise. In the context of this thread, it goes to show how effectively people have been taught to favor dependence and convenience and not taught to value their freedom to run, share, and modify computer software to control their computers.
Digital Citizen
You'd be better served by using the words "software freedom" as those words are entirely appropriate to describe a user's freedom to run, inspect, share, and modify computer software thus giving them control over their computer. It's perfectly natural for one to ask "which freedoms are you referring to?" and for you to explain. This is an opportunity for discussion and understanding, in other words learning. When someone misuses language you benefit their efforts by abdicating a proper use of language, tacitly accepting their distortion. There is a difference between power and freedom and in the context of slavery, what slavers want is the power to abuse another human being. Society needs more people to point out misuses of language and not give up in the face of those that disagree.
Digital Citizen
Stallman has selective memory and invalid conclusions.
Relative to non-GCC, GCC development has been slow. As a result, GCC forked some years ago and the for became GCC once the original GCC became irrelevant. GCC finds itself in this position again.
Unlike clang/llvm/libcxx, GCC is not modular. As a result, it cannot be easily embedded in other applications. Stallman can argue that clang/llvm/libcxx rather than GCC is embedded because of license. However, the reality is that GCC cannot be easily embedded so companies and developers must use something else.
In addition, GCC has been slow implementing newer standards such as C++11 relative to clang/llvm/libcxx. Why this is, I do not know. As a developer, I know it to be true.
The speed at which Clang/LLVM (compared to the lifespan of GCC) is insignificant, yet, it's mindshare and usage is growing like crazy.
RMS must be stupid not to correlate the speed at which GCC is being leapfrogged and the licensing issues with GPLv2 disgruntle-ness and GPLv3 being a nail in the coffin.
To me, the "community" he is talking about is giving GPL a big middle finger and wants BDS.
Although, I guess that's not just me, since here we are, talking about it.
That's pretty much how I feel about the GPL vs BSD thing.
Sounds to me like the beasts are feeding themselves quite well at this point.
Do you seriously think any of the believers are going to leave gcc short of it being absolutely, totally outclassed?
Do you seriously think gcc will ever get totally outclassed so long as they can borrow from LLVM as freely as the corporations driving it forward?
Do you seriously think that now that corporations are discovering the value of collaborative development for themselves, that we can ever hope to keep this genie to ourselves? If all volunteers left LLVM today, or over the next few years, do you believe the corporations would all go back to doing for themselves?
There is certainly reason to worry that the the corporations will come to favor licenses that allow only their little cabal to benefit from their work, but
(1) I see that risking running afoul of anti-collusion laws
(2) all the more reason to all pitch in when they don't! Show that it's valuable to *them* to cooperate with *us*, even when using licensing schemes that any of us could exploit. We all get more and better software up until somebody exploits things a little too hard for everyone else's peace of mind, at which point with something like BSD we can fork off a "no cheating" branch as easily as they can fork off an "it's all mine" branch. Everyone wins - including the hobbyists who want to share the results of their new awesome idea on how to tweak compiler technology, without having to share all the could-make-me-rich implementation details.
--- Most topics have many sides worth arguing, allow me to take one opposite you.
GPL : you are forced to be free there is no other choice ( what kind of freedom is that?) BSD : you want to be free or not up to you, but keep the copyright notice. Seriously if one really thinks about freedom BSD is more about real freedom than GPL. BSD also seems to promote technological advancement whatever the case. Sure some code might not be released :p but if u know it was done with what piece of software one can fill in the blanks. It is the developper's to decide how he gifts his code to the community.
Clang/LLVM is mostly funded by Apple. Can't get larger than that. And they support it very much. With money and with code.
Take of your tin foil hat.
I understand his point, and before the rants begin, I should mention that he came from an Artificial Intelligence Lab where people were writing free software and freely sharing it among a community of developers. Along came a corporation, took all they had done, copyrighted the lot, then made them pay for what they had written. It was (and is) theft without compensation, and worse, a shakedown racket. Its like someone coming and stealing a farmers tomatoes, then opening up a vegetable stand and selling the farmer their own tomatoes. CLANG is nice, but it would be better to improve GCC rather than jumping to CLANG. I would (I really would) like to see GCC competitive with CLANG rather than abandoned by everyone. On the other hand, we have had compilers that were dogs before, and the 'community, non-official' became official before, so I digress. Why is it that at least with compilers, we get stuck with crapola sometimes?
Bullshit
Yes because some of the features in LLVM/CLANG are in direct conflict with design decisions made by RMS about GCC with regards to integration into other tools. This isn't a lack of ability option on the part of the GCC team, it is a lack of intent, or rather deliberate intent to NOT implement for religious reasons.
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
Let's remember this post. In a few years when improvements are made to BSD license based projects iand major corporations closing the loop, thereby inhibiting innovation. In the end, we all will be stuck with dated GPL'd software that can not be improved upon because people will have failed to see the future versus the right now. Miraculously, all of a sudden, people with issue with Stallman and the GPL will be the same ones that will backtrack and claim ignorance.
Well, if they voluntarily render themselves non-competitive for religious reasons then on their heads be it. I'm sure the LLVM-GPL folks will appreciate the lack of competition.
--- Most topics have many sides worth arguing, allow me to take one opposite you.
The FSF demands that all copyright be handed over to them to be accepted by FSF .
That's why you have emacs and x-emacs; the emacs assholes wanted to incorporate code from x-emacs back into their main branch, with the requirement that the copyright be handed over to them.
So in this case its the FSF who are being the assholes. They wanted Apple's copyright and Apple rightfully told them to go fuck themselves and maintained their own fork.
That makes you part of the 10% who do know the difference.
It's still a copyright assignment and GPLv3. Most companies won't touch that combo with a six foot pole.
I have no interest in helping Dick Stallman.
In order to contribute to one of Dick's projects, you have to sign your copyright over to the FSF.
"As a _user_ of GPL software, you can link it to whatever you want, "
I've started thinking that this talking of users has been started by the computer in the role playing game Paranoia. "We keep 99% of the population happy at all times by executing everybody that's not happy."
In the GPL case, it is "Let's only count actual users - let's not count the people that would be users if we didn't have our extra restrictions." The software is "extra free" because the people that actually get to use it has some freedoms they otherwise might not have (they also lack some freedoms they would have had, but let's not count those since they're not in line with our ideology.)
Your first paragraph is carrying an air of cynicism. That's OK. Are you ready to receive it back in the form of license choices?
Wouldn't happen where I work (a state university). We don't "just sign it and scan it." You send us a contract, it goes over to contracting. If it is one they recognize, they change it, initial it, and sign it on behalf of the Regents. If not, it goes over to the general council's office and they work with contracting on it. Either way, it is getting changed and sent back to you to sign.
That copyright assignment thing? Right out. They'd agree to GPL, probably, but never to copyright assignment. All work by the university is copyright to the board of regents (and by extension the state).
For that matter the US government wouldn't be able to sign it. While they don't copyright their work that's the issue: Work by the federal government is public domain. They can't go and assign the copyright. Doesn't matter that it would be something "open", for them "open" means "public domain".
GPL could possibly be abused in a "rent everything" situation. So, you are required to distribute the source code of a GPL'd program if you distribute the binaries. The first must come with the second. However, distribution is when it is required. If you modify GPL code and use it internally, no distribution is needed since you aren't distributing binaries.
So, go all "cloud" on that shit. Use and modify GPL'd software, but run it only on your servers. Everyone of your users interacts with it, but they don't get to have a copy, and they have to pay you monthly.
There you go, GPL avoided n' abused.
I understand his point, and before the rants begin, I should mention that he came from an Artificial Intelligence Lab where people were writing free software and freely sharing it among a community of developers. Along came a corporation, took all they had done, copyrighted the lot, then made them pay for what they had written. It was (and is) theft without compensation, and worse, a shakedown racket. Its like someone coming and stealing a farmers tomatoes, then opening up a vegetable stand and selling the farmer their own tomatoes. CLANG is nice, but it would be better to improve GCC rather than jumping to CLANG. I would (I really would) like to see GCC competitive with CLANG rather than abandoned by everyone. On the other hand, we have had compilers that were dogs before, and the 'community, non-official' became official before, so I digress. Why is it that at least with compilers, we get stuck with crapola sometimes?
So let me get this straight, he was working in an AI Lab (for a school or for the corporation?), and people were writing free software and freely sharing it among the community - did they have a license on the software like BSD? Public Domain? At any rate, they were "freely" sharing it, so they were making nothing - then the "big, bad, rotten" corporation comes along and takes their code, packages it up and probably provided commercial support for it, and charged for the software? And oh yeah, probably (boo hoo) made changes to it that didn't get passed back to the "community"?
Except, if the software was even BSD or public domain, the 'community' didn't *lose* anything - the original writers of the software always still had copyright to the original source, and were free to continue to modify it as they pleased. They "lost" nothing, how can you "lose" something you never had in the first place? The company made changes, and decided not to submit those changes to the community - the community didn't *lose* anything, they had what they originally created - they simply did not *gain* the changes made by the corporation (which is not what they are in business for).
I put $1000 in the bank (in a 'checking' account that earns basically 0% these days anyways) - the bank takes that money and uses it elsewhere, puts it in a 3yr treasury earning 0.75% say, they are making money. I have "lost" nothing (discounting inflation, in which case even the bank making 0.75% is losing on it) - RMS is essentially saying that the bank is 'stealing' that 0.75% from me, but they aren't - perhaps I would have been better off investing that $1000 in a 3yr treasury myself, but I didn't, I made a choice. Similar to the choice they made with their AI code to "freely share it" - perhaps now he would have been using a GPL license on it so a company couldn't profit off it, so be it, the company will probably write their own code, or support/fund something like LLVM instead, perhaps even produce *better* code and cause people to use it instead of the GPL code. So be it, people are making a choice if they use that new code, which is their *free* right to do, is it not?
Using GPL'd components from elsewhere is extremely dangerous for commercial software companies unless they plan to release their entire codebase under the GPL and only the GPL.
All it takes is for one unaware employee to copy even a piece of GPL'd code into the proprietary product, and the company is now exposed to a liability that may not be curable solely by money--they can be forced to release the source code of their entire product instead. The FSF and other GPL proponents have consistently shown an interest in enforcing the license in court, but they usually reject the idea of monetary settlements for breaching the GPL license terms. That's what proprietary software developers mean when they say things like "GPL is viral": they mean that if a small piece of GPL code infects the proprietary codebase which is vital to the business, it can cause a massive disruption to their business and the loss of most of the time and money they have invested in its development. Unless the use of the GPL'd components is extremely valuable to the business, the huge risk presented by using GPL'd code in a proprietary environment is simply not worth taking. For most commercial software developers, there's only three options that make any sense: (1) write the software entirely in-house, don't use any open-source code at all. (2) reach out to the developers of the component and negotiate a suitable commercial license with them. If they aren't willing to license it that way (as some authors using the GPL might not be), then return to option 1 and just don't use the code. (3) use components with liberal licenses (2-clause BSD for example) but avoid more restrictive licenses such as GPL and even LGPL, like the plague.
I like both of the GPL and BSD licenses. They address different needs, and users and developers can choose for themselves which philosophy is appropriate for them and which of the two communities they want to support or participate in (including neither, or both). If I wrote something for my own use that I wanted to give away, I would probably choose BSD, but it would depend on the exact circumstances. I would be happy to contribute code to GPL projects if it made them more useful for me. In my day job as a proprietary software developer, GPL code is toxic and must be completely avoided. Even BSD gives the lawyers some anxiety, what if part of the code was contributed by someone who didn't actually own the copyright to it (e.g. if they plagarized it from another codebase)? If we write the code entirely ourselves, at least we can police our own developers to make sure they don't violate copyright. If we accept BSD code from outside sources, we have no way to know if its 100% safe or not. If we negotiate a commercial license from another company, we can get some indemnity from them for situations like that. If we accept free code from a penniless open-source project, and it turns out there was something tainted in it, then we might get sued and have to deal with it ourselves.
Except that GCC, by design, isn't useful for the kinds of things that Apple and other companies want to do with LLVM. Its crippled by the FSF philosophy that they don't want it embedded in other tools (unless they are GPL) or used as a building block to build other tools (unless they are GPL). GCC was deliberately made into something that was difficult to use in those ways by anyone not themselves using the GPL. Apple needed dynamic compilation for their OpenGL layer. They needed parsing and error reporting for their IDE. Even if it were technically possible to do these things with GCC, its license would force them to license these other software components under the GPL too, which is incompatible with their business needs.
But they can have the reusable infrastructure they want using LLVM and clang, which they run as open-source projects so they can effectively pool resources with other companies who need or want the same kind of things. They are happy to pay their own developers to make LLVM better, because they directly benefit from that too.
The BSD license allows proprietary companies to extract value from the open-source components, but they still have incentives to contribute to BSD-licensed components since they themselves can benefit from their contributions (and the contributions of others, even their direct competitors).
If you want to contribute to a FSF project like GCC, you must also surrender your copyright, without compensation.
If that isn't generosity, nothing is.
Factually incorrect: LLVM was started at the University of Illinois (see wikipedia). Apple essentially bought it when they decided that they didn't want to go GPLv3 (probably out of fear that the patent clauses would make it harder for them to sue Samsung or something, I would really love if someone could explain to me what's wrong about the GPLv3. Tivoization?). Now the biggest company on Earth has been pumping money into it for several years, and GCC is still as good or ahead. Perhaps GCC's structure isn't as bad as people make it out to be ... Imagine if there wouldn't have been LLVM perhaps Xcode would be Free?
Concerning this story it might be worth pointing out that ESR tried to start a flamewar on the GCC lists with a factually incorrect rant (factoids that people around here also seem to believe are true, like "llvm error messages are better" -- gcc did a lot of work in that regard, "GCC doesn't want to be modular" -- actually, they're working on that, "GCC doesn't allow plugins or being plugged in" -- nonsense, anecdotal evidence about better optimization in LLVM etc.)
ESR's two rants can be found here and here (didn't take him too long to use a gun metaphor), replies from the gcc communities are downthread. There you will also find the most common myths about GCC and LLVM disspelled.
> This is exactly the problem with the GPL [...]
and later:
> It's viral, and not in a good way [...]
This is *your* opinion, and you are entitled to it, and I do respect it. But... I'd rather bet on RMS being right that on you being right.
RMS is a visionary, and I think he's onto something there.
Do you think LLVM would be half as free as it is now hadn't there been GCC in the first place? Or rather it would be some academia-industry thing, under some obscure "shared source" "patent cladded" regime?
Why would they do that? Clang was created from scratch by Apple, and they released it openly, because they know it benefits them. Why would they suddenly close it, when they were the ones who made the decision to open it in the first place?
"so that all contribution to LLVM directly helps proprietary software as much as it helps us."
yes... that's the point of freedom, stallman.
Apple doesn't sell XCode. It's a free download. It won't do you any good without a Mac to run it on, but that doesn't mean the BSD license isn't helping.
"When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
a Steam Machine can switch to GNOME and run a completely free game.
Fortunately humblebundle is starting to encroach on the Steam situation by noticeably not requiring DRM on a majority of their titles and so does desura.
And you can run these games on your Steam Machine. A Steam Machine runs a free operating system, which is noticeably less evil than a console from a company that has in the past compared startup developers to contestants on American Idol .
Neither of those examples are correct from the Stallman perspective.
I don't believe that the Stallman perspective as you characterize it is the most efficient in a market heavily distorted by video games. The purpose of the GNU project is to provide a source-compatible alternative to the UNIX system under a free software license. U.S. federal courts have ruled that reimplementing a platform from its specification does not infringe (Oracle v. Google). But on the other hand, courts are cracking down on this practice of reimplementation in the field of video games (Tetris v. Xio).
It's already making a compromise by merely being in those situations, merely for the sake of (reason omitted because you sure as hell didn't provide one).
I understand that you are unsatisfied with the level of detail provided in my previous comment. Please first allow me to reason by process of elimination. There are three ways to switch from proprietary applications on a proprietary platform to free applications on a free platform. The first is to replace the applications first. The second is to replace the platform first. The third is to replace both at the same time. In practice, the third has caused interoperability issues that the vast majority of users have found unacceptable because there's no way to do it gradually. The most gentle method of introducing free software, and likely the most successful method is a mix of the first and second methods over four steps.
The first step is to consider what free platforms could eventually replace your proprietary platform. Theoretically, ReactOS is closer to Windows than GNU/Linux is, but I haven't seen evidence that ReactOS is anywhere near the maturity of GNU/Linux.
The second step is to phase out applications exclusive to one platform in favor of applications compatible with the chosen free platform. For example, replace applications exclusive to Windows that do not run in Wine with applications that are ported to GNU/Linux or run in Wine. Preferably these are free applications such as Firefox, GIMP, and LibreOffice, but if no free application is available at the moment, that can wait. Even the Free Software Foundation has realized that a transition has to be done in steps and has begun to compile a list of free applications for Windows as one step.
The third step is to switch to a free platform and bring compatible applications with you. When I switched to GNU/Linux on my laptop, this was relatively painless because I had become comfortable with the result of the second step.
Finally, phase out the proprietary applications. This final phase may never finish if one's workload includes video games.
MS needs to make windows GPLv3
That'd be fine if you could put your money where your mouth is. Implementing your suggestion would cost half of Microsoft's market cap (currently $307.25 billion, therefore $153.63 billion).
Could they still make money in that situation? Absolutely.
Could they make as much money as they used to? I'm skeptical. Such a decision to cut expected earnings per share so drastically would likely make Microsoft the defendant in a shareholder lawsuit.
Hello wanna be coders, wanna be nerds. Richard Stallman has been fighting for your rights for longer than most of you have been alive. LLVM Clang would not exist without Richard Stallman.
Now go fuck yourselves
"The users of XCode, however, aren't seeing much benefit from the BSD license..."
Sure they are! If LLVM was GPLed then apple wouldn't be able to use it in XCode and all XCode users would no longer receive the benefits LLVM because apple would be forced to use or build another library. So end XCode users certainly do benefit from LLVM being BSD licensed even if the majority of them never know it.
Yes BSD makes it easier for companies to make more money but that's a separate argument from whether it improves the features and utility available to end users, however indirectly.
You should feel free to use binaries without source wherever you want; that's your decision for yourself. Your concessions, even if they reflect the concessions of the majority, should not be imposed on the minority.
What the hell is "proprietary software constructed within obscurity"?! How is that different than proprietary software?
See, the thing about BSD-style licensed software, is that, sure, it's open source, but it doesn't address the problem that was always the primary target of the FSF and GPL: Proprietary software. BSD-style licenses still allow software to be proprietized, obscured, and locked down with non-reciprocal license clauses. That is anti-user and anti-freedom (at the risk of sounding--GASP!--idealistic). The ability to take free software and make it nonfree for another user (e.g., customer) isn't a freedom, it's a power.
As a counterpoint, Apple likes LLVM. They've modified it, and they're selling their proprietary fork as XCode. They've found great value in the freedom afforded them by the BSD license. The users of XCode, however, aren't seeing much benefit from the BSD license, because it never got to them. Apple ate it along the way.
As a correction to the counterpoint: Apple has paid for full time development of Clang + LLVM, as they use it. Despite being under no legal obligation to share the source back to the community they have done so; in essence donating their time and money to a BSD project. Their users benefit (by having a better compiler), and other Free software users benefit (by having a better compiler, plus the ability to build their own IDE around the same underying compiler tech. as Xcode).
There are plenty of examples of BSD software getting "eaten" by a proprietary stack, but much of Apple's usage is actually one of the worse examples you could provide, as they often do contribute quite a lot back.
The real litigious bastards...
License like the BSD don't bestow more freedom to the developer, they grant more *power* to the developer. It's a fallacy to think they are the same. GPL and BSD are "equally free" (subject to reasonable interpretation) from the perspective of the recipient, but when the GPL forbids you from locking down the software you received, proprietizing it, or, e.g., adding DRM to it, they aren't infringing on your freedom, for goodness's sake! It's limiting the power you may want to exercise over the users of your software, power that you yourself (fortunately) were not subjected to.
In a world/nation without copyright, that is only the truest freedom, but in the presence of copyright, GPL is definitely "more free" than BSD, because where BSD doesn't care to ensure or perpetuate user freedom, the GPL enshrines the defense of freedom. The BSD license allow proprietization, freeloading, and a whole host of other activities that are inherently dangerous to free software.
Or were you confusing freedom with power? That's a common fallacy in the BSD camp.
Well, if the GJCC2 crowd would just pay attention to the VKKL crowd we could upgrade the SMC to the ViLL2x and that would eliminate the need for the SSCCGJKv3 and Linux would be more effective...
It's a false dichotomy.
Look at what the Ogg folks did: encoder is GPL, decoder is BSD. Very smart.
So nobody pitied your choice to agree to prevent users from controlling their computers ("I once worked on a project where part of the technology stack came with a legal requirement to take steps to prevent customers from reverse-engineering"). And nobody pitied you complaining that you couldn't find developers who were willing to be taken advantage of themselves—giving you code in exchange for nothing ("so LGPL was just as radioactive as GPL"). Or perhaps it was your namecalling (code licensed to not let you hurt others is "radioactive") that helped drive them away.
Digital Citizen
Comparing a car with personal computers is really clever way of thinking. (Especially after the snowden rev.) Congratulations for achieving the next level.
One important practical freedom is that LLVM works as a library. With GCC, leveraging the GCC backend, even for an open source project such as XL (http://xlr.sf.net), was a pain. With LLVM, it was dead easy. And then, building a commercial product on top of said open-source project (http://www.taodyne.com) was legally possible, whereas with GCC it would have been challenging to say the least.
-- Did you try Tao3D? http://tao3d.sourceforge.net
Apple's management (notably Steve Jobs) and some people who work for Apple used to work at NeXT. When NeXT needed a compiler, they chose to base their work on GCC. NeXT got caught distributing the GCC Objective-C frontend in violation of the GPL in what Brad Kuhn (longtime FSF employee and GPL violations enforcer) called a "calculated" infringement. It's reasonable to consider that when Jobs and company lost that fight they decided to get away from GPL'd software because they had experience with a copyright holder who defended their license. Sadly, Apple is building quite a record of copyright infringement. Apple got caught distributing VLC and GNU Go in violation of the GPL. Apple also got caught commercially infringing upon some writers' copyright. So perhaps Apple's switch from GCC toward a non-copylefted free compiler has at least as much to do with control over the user as any technical issues. After Apple's other illegal and unethical behavior, maybe Apple is just getting tired of the bad press.
But it's clear that differing values are at the heart of this issue; not having Apple use GCC doesn't "harm GCC" at all. The fight for software freedom was and is the reason for the GNU Project including starting GCC. Apple is welcome to help improve and distribute free software, including allowing its users to share in that freedom. This isn't a popularity contest no matter how much Eric Raymond and other open source advocates want to frame the issue in that way. As RMS said, "If that enables GCC to "win", the victory would be hollow, because it would not be a victory for what really matters: users' freedom."
Digital Citizen
That applies to Richard Stallman as well! That's the whole point of the GPL, to prevent people from using the software in ways that RMS does not approve. This whole rant against LLVM takes it one step further, he's pissed that someone else's software is being used in ways he does not approve. He's a moralistic busybody.
I hate it when I buy a new car and it doesn't come with the tools and equipment needed to fully service it. I want my freedom!!!
We can't give a tax break to EVERYONE, because that would help the rich as much as the poor!
Here, someone is giving you stuff without such strings, and you're suggesting building stuff on top of it, and then not letting the original author use your additional stuff in his day job where he can't use the GPL, because you don't like his choice of license.
GPL proponents are fond of saying "if you don't like the license, write it yourself. You don't get to profit off my hard work for nothing."
That's fine, and you're welcome to the attitude, but if someone gives you stuff, and you find it useful enough to build on top of it rather than starting from scratch, it makes you look petty and mean to place your code under the GPL so that he can't use it, even if it's legally permissible.
Most people use a different definition of freedom, but this response is the only response you could expect him to give if you know his principles.
Religious zealots use a different meaning of "theory" when discussing evolution vs. intelligent design, too. That doesn't make them right.
20 years of GPL and legal advice is still coming in;
therefor do not wonder that big non-profit academic organizations still consider GPL varieties "non-green" licenses:
http://geant3.archive.geant.net/About_GEANT/Intellectual_Property/Pages/home.aspx
Fact is, unless you understand the law well, it is difficult to always infer correctly which GPL usage is correct and which not.
LGPL does not require dynamic linking, despite popular misconception. What it does require is providing source code of the free part, .o files of the proprietary part, a build script, and Installation Information. Where closed platforms fall down is the Installation Information.
> 20 years of GPL and legal advice is still coming in;
This has nothing to do with the GPL. You were talking about copyright assignment.
> therefor do not wonder that big non-profit academic organizations
> still consider GPL varieties "non-green" licenses:
> http://geant3.archive.geant.ne...
I've never heard of GEANT's software licence list. Since I've been working in the field for ten years, I can assure you it's not a reference. And if you read their document, you'll see it's based on an error. They classify just BSD, MIT, and Apache as "green" because they think that with every other licence "further authorisation is required". Nonsense. Somebody should contact them.
Expert in software patents or patent law? Contribute to the ESP wiki!
... and you see you don't need to tell the customers not to redistribute. If they just paid € 50'000 in licence fees they won't make the code available to there competitors for free.
The GPL is very "business-friendly" — it is just business being to afraid to actually see it's potential.
PS: GNAT Pro is a gcc based commercial compiler for Ada. There is a gratis version for non commercial use as well.
LLVM is the best thing to happen to the open-source community in decades.
The draconian and totalitarian rule of the GPL is over. Stallman and his ilk destroyed GCC all by themselves. Nobody wants to use GPLv3. The more he tried to tighten the screws, the more he turned people away from his fanaticism. There's too many possible issues related to plugins and even the C library for developers to want this mess associated with their software anymore. You need a lawyer to even cover the thousands of words of the GPL to avoid possible liability. There's finally an alternative, and people are scrambling to it. This speaks for itself.
GCC is dead. GNU is dead. GPL is dead. These are Stallman's final tantrums, because his irrelevance is finally coming to completion. The open-source community can finally claw its way back into the mainstream with an image of true freedom, rather than represented by the ravings of a crazy unkempt old man.
You can't take something BSD and make it non-free. You can take something BSD, add something of value to it and make the sum total non-free, but the original is still there in the free form it was originally found.
But you decided NOT to GPL it.
So how come you're going to decide it's better to let you use GPL'd code and ignore the restrictions, but not for anyone else to decide it's better to just take your code and use it likewise?
It's better for your competitors AND customers if they can just take your code and use it in their products.
Name one that sells closed source without a bundled support contract.
Windows: Support from Microsoft or the supplier of the hardware for OEM.
Develop with the BSD or GNU tools will still (IMO) allow GPL for the derived application.
Edits and updates could still require using the original BSD or GNU tools.
MS-Gates and other proprietary developers would still use BSD tool, but would they be able to use the OSS application code placed under a GPL? IDNK
Unaccountable leaders are masters, and unrepresented people are slaves. How do US and EU fare?
Stupid Anonymous Cowards, like you, are mortal minions of krap.
Unaccountable leaders are masters, and unrepresented people are slaves. How do US and EU fare?
That's pretty much how I feel about the GPL vs BSD thing.
I'm not sure how I feel about a society giving its members the ri. How do you feel about a society giving its members the ri?
(Hint: the subject line of a /. posting is limited in length, and it might not be big enough to say what you want.)
So you're saying licensing had nothing to do with Apple going with LLVM over GCC? That BSD vs GPL has nothing to do with it? That since Apple gave everything back to the community anyway, they complied with the GPL despite only being obligated to comply with BSD? That XCode is open-source and released under the BSD license?
Dislaimer: Those were earnest questions. I don't use LLVM, XCode, or any Apple software. I'm not familiar with the details of this story beyond what I've read in the comments.
Chuuch. Preach. Tabernacle.
Does it come with the source code?
If not, then it really does mean the BSD license isn't helping ensure freedom, in at least one sense.
Chuuch. Preach. Tabernacle.
Sure they are! If LLVM was GPLed then apple wouldn't be able to use it in XCode and all XCode users would no longer receive the benefits LLVM because apple would be forced to use or build another library.
Are you sure about that? Are you sure that Apple wouldn't be able to use a GPLed LLVM in XCode, even if they released XCode under the GPL as well? In this scenario, wouldn't both LLVM users and XCode users be better off than they are today?
What's that? Apple's greed prevents that from being a realistic scenario? Well then...
Chuuch. Preach. Tabernacle.
Why is it that they went with LLVM and not GCC, if not for the kryptonite that is the GPL? I'm aware of the... mess... that is GCC, but the prevailing opinion in the comments here suggests that the license was a significant, if not primary factor in this decision. Presumably, Apple "gave back" their contributions to Clang and LLVM, but is XCode open source? Would it have to be if the compiler they used had been licensed under GPL?
Chuuch. Preach. Tabernacle.
Off-topic: Fuck my life.
So I'm re-reading this thread, and I just realized, GP made reference to "our enemies", and in my response, I referred to "the terrorists".
As someone who enjoys reflecting on his own thought processes, consciously believes that there is no meaningful terrorist threat to the US, and thinks that "the terrorists" are to a large extent a fictional boogeyman conjured up to force social change, this scares the shit out of me.
The effectiveness of, for lack of a better word, brainwashing, just left me with chills running down my spine. If I, someone who really doesn't buy into the terrorism myth, subconsciously replaced "enemy" with "terrorists", how the fuck do you think Joe Sixpack's brain is dealing with this shit?
Chuuch. Preach. Tabernacle.
Thanks for letting me know llvm can be used for commercial projects LOL.
Besides: You voice fear of things which never actually happened. Proving my point that business is missing the opportunities of GPL.
Lets see if we can find some really hard core stuff that we all depend on that is equally as dangerous as LLVM and clang. Ready I'll start:
MesaGL
X.org
Gallium 3D
Apache
PHP
Python
Perl
Cocos2d
OMG, these are all Timebombs to destroy your freedoms!
Apple is probably the primary reason LLVM is thriving, actually - they've been paying people to work on it for nearly a decade now (XCode isn't so much of a proprietary fork as it is a proprietary front end and IDE).
In fact, I'd go so far as to say you could cite LLVM as an example of why RMS is wrong about BSD-style licenses in general. Just because "the bad guys" can keep their modifications proprietary, doesn't mean they actually do.
I don't get the problem. Ofcourse a BSD licensed compiler can be integrated into non-free products, but free-software products also get the advantage of having it, so what value is lost? The original software does not degrade because someone makes a commercial product with it.
Even some company making a commercial product without giving anything back may be beneficial, for example in the embedded world we have tens of homebuilt shit compilers. They are shit, but they are the only thing that can be used for the platform so you have no choice eitherway. At least using a 'gold-standard' tool would allow the user to easily use knowledge gathered with the proprietary tool to use the open source one.
That's not as crazy as you make it sound. Perhaps our enemies have a cancer incidence rate that is orders of magnitude greater than ours. Perhaps the US only has one cancer death a year, but "the terrorists" lose millions to cancer every day. Were this the case, then indeed, a cure for cancer would be a major setback to the US.
The ignorance of this comment is so astonishing, I have no words; if you can buy into the argument that "the terrorists" are a monolithic axis of evil who uniformly deserve to die of cancer there is no point engaging in any sort of discussion. Still I could not let this pass with out at least pointing out your myopia.
I have no words
If only.
I was playing devil's advocate, in case that wasn't obvious. It's more or less axiomatic that in this context, death for one's enemies is preferable to death for oneself.
Chuuch. Preach. Tabernacle.