[Mono-list] purpose of the GPL & LGPL (was Re: The viral license problem (was System.CodeDom.Compiler licensing issues))
Sat, 25 May 2002 20:13:36 -0500
> Maybe I'm just looking at this a bit simplistically. I don't see GCC
> and the mono C# compilers in the same league. One churns out code for
> bunches of languages, and supports many back ends... Truly a massive
> feat, which grants great power. The other compiles a single language
> into IL bytecode. Not quite the scale of GCC, y'know?
> And that's kinda the lines where I like to see things licensed. Big,
> important, powerful == GPL. Smaller, single purpose == BSD
> Yeah, I know... I'm not really an opensource zealot, but from whence I
> take, there I give...
Maybe so, but the problem is still there.
>> Free software for most people means that they have no
>> obligations at all to give back.
> And that I really don't mind... It's their choice.
>> The GPL protects honest developers from that type of
>> abuse, the LGPL does not.
> When they take, extend and keep proprietary... Sometimes that doesn't
> bother me, (mostly with components, but it would infuriate me with the
> biggies : GCC, Linux , etc...)
> I guess my complaint is with the GPL that it dictates what the overall
> license will be once you commit to using the code. Whether you
> leverage 100 lines of code, or 100,000, or 100,000,000 lines. Let's
> face it, if I write a million lines, and I use a GPL'd library that's
> got 100 lines in it, I'm forced to go GPL, if I wish to use the code,
> or write my own. Yeah, it's my choice to use it, and Yeah, it's the
> author's right to license code any way they want.
> It is just that in this particular case, I would like to use the code
> in an opensource project, *without* making my opensource project GPL.
> I don't feel my component is important enough to force my license on
> Now, if it were at lease LGPL, I could build a library out of it.. ;)
> I guess I still don't see the mono C# compiler being in the same
> league as the GCC suite.
> I wouldn't want GCC to be anything other than GPL too. I don't need
> all my software to be GPL or even opensouce. I've bought many a
> software package, because it was fundamentally better than the
> opensource/GPL equivalent. And regardless what RMS says, I'm NEVER
> going to choose open first, quality second.
It is precisely this attitude that necessitates the GPL, and copyleft in
general, in the first place. It is rather difficult for a Free Software
project to compete when it only has its own resources, and any potential
proprietary appropriaters have not only the resources of the FS project
to draw on, but their own.
The GPL allows Free Software developers to compete with proprietary
developers. It is not in the interests of free software to accomodate
proprietary developers at all.
This isn't knocking you, or anyone else who makes this choice. It is the
way of the world. However, there are some people who do choose Freedom
first, and developers who do the same, and they would like to spread
their freedom as far as possible. I think that Free Software will
eventually become universally Better Software, thanks to the power of
copyleft, but it needs people to commit to it now; that is, choose
freedom over quality.
>> I find assurance in knowing that the sofware that I use
>> will remain publicly available and no one will be able to "take over"
>> software (the case of Kerberos is an example of what I mean).
> I don't see how someone can "take over" code under alternative
> licensing. Yes, they can make a copy, and yes they could make serious
> changes to it, to enhance it, but that still leaves the original code
> availible. It didn't dissapear.
Oh really? One example...Mosaic. Sure, you can still get the code, but
so what? Fortunately, the Netscape people had a moment of magnanimity,
thus giving back in a small way, and continues to do [most of] its
development openly at Mozilla. However, such good deeds are extremely
rare at best.
Or how about BSD Unix? If all development had been copylefted, that is,
forced back into the mainstream BSD/Free Software community, would we
ever have had a DOS/Windows come in and fill the void left by the major
UNIX fragmenting that followed? But you know what, we've still got the
code to BSD Unix too.
As for the GPL, there has been plenty of discussion on potential
problems with the GPL linking with proprietary code. I agree that this
is an important practical problem, but let me add that it is not the
FSF's, or the GPL's in extension, to accommodate proprietary software
providers or users, except when it means spreading the use of actually
Free software (read: not that which is included in proprietary programs;
Mosaic code is in IE, but that doesn't help anyone but Microsoft), as
with the LGPL's compromise.
And to Daniel Carrera (because I want to get this all in one email, not
cluttering the thread up more than it already is ;), you misread the
purpose of the LGPL. You say that:
> Indeed, the FSF recommends that you *not* use the GPL for libraries unless
> you are writing a library that has unique functionality, and you want to
> give an advantage to free software (that's from their website).
The FSF actually says (and you can read it yourself,
<http://www.gnu.org/licenses/why-not-lgpl.html>) that the GPL should
*always* be used for libraries *unless* you are implementing
functionality already widely available, such as with glibc. A subtle
distinction, but important.
"There are reasons that can make it better to use the Library GPL in
certain cases. The most common case is when a free library's features
are readily available for proprietary software through other alternative
libraries. In that case, the library cannot give free software any
particular advantage, so it is better to use the Library GPL for that
I like to add a distinction here, "0-cost", as the Qt licensing model
does promote Free Software effectively (being that the non-free version
The point here is that the LGPL allows people to use Free code in
non-free software, and in other cases than that above, I regard this as
generally a Bad Thing, because it weakens the copyleft greatly. I don't
like the common attitude, "I prefer GPL, but for libraries, I prefer
LGPL" as it misinterprets the original intentions of that license.