At 11:22 AM 5/3/2006 -0400, Reid Ellis wrote:
On May 2, 2006, at 9:26 PM, Phillip J. Eby wrote:
At 06:05 PM 5/2/2006 -0700, Mikeal Rogers wrote:
If we use the apache 2.0 license, which is incompatible with the
GPL, wouldn't we then be restricting parcel developers from using
the GPL if they did wish to do so?

Why would Chandler's (non-viral) license stop anyone from licensing
their parcel under whatever license they want? (Including a closed- source commercial license, if they so choose.)

I think because a full GPL license requires linking to other GPL
code, which Chandler would not be. If this is correct, then parcel
writers would not be able to use the GPL.

Note that the GPL never talks about linking, only derivative works under copyright, and it provides a definition:

"""that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language."""

However, for the sake of argument, I'll pretend that the FSF's expansive interpretation does cover loading two independently-written modules into memory at the same time.

There are actually quite a few legal problems with this interpretation, not the least of which is explaining why pointer linkage between two programs is any different from bibliographical citations or hyperlinks on a webpage, or why two programs running at the same time on the same computer aren't a derivative work, and why virtually no commercial library licensing treats the combination as a derivative work, but we'll ignore all those problems for purposes of addressing the question.

So, if we pretend those problems exist, and look at the consequences of assuming the definition is correct, we see that if you combine Chandler with some other code, the result forms a derivative work of *both* Chandler *and* the other code. Thus, both Chandler and the other code's license must allow you to have created this derivative work, or you're in violation of copyright law.

So let's look at the GPL, section 2a:

"""You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License."""

And the end part of section 2 states:

"""If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.

In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. """

So what does all this mean? Chandler can reasonably be considered an independent and separate work in itself -- and is thus exempt from the GPL's control over the *distribution of the whole work*. Ergo, mere distribution of a Chandler parcel by itself is not a derivative work including non-GPL code. So the GPL doesn't prohibit creating and distributing a GPL module that runs on a non-GPL platform. In fact, it doesn't even prohibit creating a CD that contains Chandler and the parcel, since that's mere aggregation.

In other words, all the GPL says about Chandler parcels is that a parcel author cannot merge their parcel code with the Chandler source, and then release the whole thing as a Chandler derivative with new built-in functionality under the GPL -- thus creating a GPL fork of Chandler.

And *that* is what the FSF means by "GPL incompatible" -- it's a code-phrase for "doesn't allow a GPL fork". They like to use the term "incompatible" because it implies that it's the other license that's broken, which then gets people to campaign for changes to other software licenses because "compatibility == good". :)

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "General" mailing list
http://lists.osafoundation.org/mailman/listinfo/general

Reply via email to