[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Heart of the debate



Marc van Leeuwen wrote:

[ . . . ]

> On Tue, 15 Feb 2000 12:02:31 -0500 Andreas Pour <pour@mieterra.com> wrote:
>
> > When I read "under the terms of Sections 1 and 2", I interpret that as "in
> > compliance with".  "Under the terms of" is often used in legal documents to mean
> > "in compliance with" (e.g., if a bank says you have to make "interest payments
> > under the terms of this Loan Agreement", it is obvious that what is meant is "in
> > compliance with the Loan Agreement", rather than meaning "a whole separate Loan
> > Agreement applies to the interest payment" or that somehow the "entire" Loan
> > Agreement applies to the interest payment).  So you have to distribute the
> > complete source code in compliance with Sections 1 and 2.  Those sections place
> > some additional requirements on the "Program" and on any "work based on the
> > Program", but not on other works which are not based on the Program.
>
> Thanks for the explanation, I think I now begin to understand how you're
> trying to make sense of the GPL. Just keep in mind that if you find you're not
> too successful at it (as I gather from what you said later), it might just be
> because you chose this interpretation.

Nope.  My interpretation is the most sensible one I can come up with; which does not
mean one can't poke at it, just that other interpretations I have heard have far more
to poke at.

[ ... ]

> The problem with reading the GPL this way is that it systematically uses this
> phrase when the rest of the GPL (or the designated part) does NOT explicitly
> treat the subject of "under the terms" (in some cases: explicitly not).

It does not have to specify it explicitly; in compliance means in compliance, so if
you don't violate any terms, then you are doing it in compliance.

> This
> is most clear in its first real use: "2. You may... copy and distribute such
> modifications or work under the terms of Section 1 above". But Section 1 talks
> about "verbatim copies of the Program's source code as you receive it" which
> is explicitly distinct from any modification.

So you realize that any interpretation of the GPL will have serious problems, the GPL
being so poorly written.

> Same problem with the first
> paragraph of 3, as you noted. This confused me too, until I made a fresh start
> reading the GPL, and it became clear to me that this is just an abbreviative
> mechanism. Rather than in the first paragraph of 2 add "provided that you
> conspicuously... exchange for a fee", which is literally the same as in 1,
> there is just a reference. Note that if you do expand out that text, it makes
> perfect sense.

FWIW, this is how I have been reading Section 2's reference to Section 1 -- as a
reference to the conditions, rather than the predicate.  It appears to be the most
sensible way to interpret it.

> This is different from either of our viewpoints so far: one is
> not trying (as you would) to read what Section 1 stipulates about
> modifications, nor is one making (as I would) Program refer to "work based on
> the Program"; rather one is replacing the entire subject of section 1
> (verbatim copies of the Program) by that of section 2 (works based on the
> Program). And of course there are additional conditions in 2.
>
> While this makes clear what is meant by the "terms of section 1" (roughly: you
> must place/keep intact notices), it becomes a bit more difficult for the
> "terms of section 2"; that would be something like "you must indicate changes,
> ensure that third parties have permission to modify/redistribute,

Section 2(b) says nothing about modifications; it only talks about licensing at no
charge to third parties.

> and ensure
> that notices will be displayed on execution". The difficulty stems from the
> fact that clauses 2a, 2b, 2c do not share the subject of the initial paragraph
> of 2: 2a introduces "the modified files" and 2b "any work that you distribute
> or publish". So textual expansion into the first paragraph of 3 has its
> problems (I don't think binaries themselves need to carry notices of any
> changes to the Program).

You will have great problems with the first paragraph of Section 3 if you read "under
the terms of Sections 1 and 2" to refer to the "object code or executable form" (I
call this a "binary" for shorthand).  Even if you apply only the conditions of
Sections 1 and 2 to a binary (removing the predicates of both sections, since both of
them clearly deal with source code), virtually none of the conditions makes sense as
applied to a binary.

For example, Section 1 requires a conspicuous publication of a copyright notice; I
don't see how you do that with a binary, since it is not human readable (if you really
stretch you can interpret this to mean "cause to print when invoked"); it also
requires keeping intact all references to the GPL, and I don't see how the binary can
keep intact all the references to the GPL in the source code (in point of fact,
looking at some of the binaries produced by FSF using 'strings', there is no reference
whatsoever to the GPL); and finally it requires distributing a copy of the GPL (this
one makes sense).

Turning to Section 2, that makes a bit more sense, except for the first requirement in
Section 2(a) to include modification notices and dates.

If you want to go ahead and read Section 3(a) to apply Sections 1 and 2 to the binary,
you have to interpret "under the terms of" to mean "subject to the applicable
conditions of".  This is a reasonable reading, and while it is certainly not certain a
court would read it that way, I won't quibble with it since that is the interpretation
I have been giving it.

But, in turn, you will also have to admit, then, that the reference to the "terms of
this License" in other parts of the GPL can have similar readings; i.e., it does not
necessarily mean the entire License but rather applicable portions of it.

> Still I think it is not too forced to read something
> like: "You may copy and distribute...in object code or executable form
> provided that you conspicuously...(see section 1)... for a fee, that you cause
> the object code to be licensed as a whole... (2b)... License, that if the
> program normally reads... (2c), and provided that you also do one of the
> following: (back to 3a).
>
> I think the heading of the GPL proper, "Terms and conditions for copying,
> distribution and modification", also supports (or at least is compatible with)
> interpreting the "terms" as those parts of the sections that qualify the
> permissions being granted, and which therefore do not encompass the particular
> object of the permission in each section.
>
> The other two important occurrencs of "under the terms" (in 2b and 3a) are a
> bit different, if only because they say that one "must... under the terms"
> rather than that one "may... under the terms". They are very particular for
> GPL (or copyleft in general) in that they are requiring another distribution
> as a condition to permitting a particular one. Here the analogy with other
> legal documents such as a Loan Agreement is likely to be less clear.

Only if you obsess on the fact that the permitted act, and the requirements, both
pertain to distribution.  I do not see this as material.  The essential point is that
to get the benefits of a document (e.g., ability to distribute the code, or the
ability to draw loans under a credit card), there are accompanying requirements.

> Since the
> distribution required is distinct from the distribution being permitted, the
> reference is neither "see section such and such for details concerning this
> part of the agreement" (as is would be for interest payments)

Not clear what you mean here -- generally there is no section reference in the
interest payment requirement.

> , nor a simple
> "copy the text from section such and such into place here". Therefore, I can
> only see this as a recursive invocation of the GPL: "the same permissions
> granted in the GPL with respect to this Program should also be granted to all
> third parties (and at no cost) with respect to any work derived from this
> Program that are published" (2b), and "the same permissions granted in the GPL
> with respect to this Program should also be granted to recipients with respect
> to the complete sources accompanying distributed binaries" (3a).

Well, if you read it that way, then you must also read it to mean the same conditions
to redistribution apply to the complete source code.  The 3(a) reference only has
meaning through 2(b), so your reading requires you to read Section 2(b) as saying, the
*entire* source code must be "licensed under the GPL".  As I have mentioned numerous
times, this would forbid linking GPL applications with X, since X is *not*, and cannot
be, licensed under the GPL.

I would respect the position (although I disagree with it) if it were consistently
applied.  The problem I have with Debian is, they don't apply it consistently.
Somehow they weed out Qt but leave X and BSD.

> I admit that
> I am now using "terms" to designate the permissions themselves, rather than
> just their qualification, as I did above.
>
> Now some final quick reactions.
>
> > The "complete sources" is broader than a "work based on the Program".  In the
> > case of a GPL binary with a non-GPL library, at least when distributed statically
> > linked, the complete source code includes the library source code, whereas in
> > that case the library is not a "work based on the Program".
>
> No, but the complete sources are (not the GPL uses "complete source code",
> singular).

I'm not clear on that.  You are assuming that the library/Program combination itself
is a "work", with "work" having the meaning provided by copyright law.  Essentially, I
take it you would agree that the if you distribute the Qt sources, and you also
distribute kghostview, on the same CD, those two together would not constitute a "work
based on" kghostview -- at this point they are two separate works (although kghostview
makes reference to Qt functions, for copyright purposes that obviously does not make
them the same "work").  So the issue becomes, does the mere fact of Section 3 of the
GPL requiring you to distribute them together constitute them a single "work" for
copyright purposes (or really for any purposes).  I don't believe so, but I doubt
there is any relevant case law on this.  (Unquestionably the binary, in a
statically-linked case, is a single work, but here we are talking about source code
only).

> > > The would seem quite reasonable, but I have two difficulties:
> > > (1) the activation of section 2 is independent of the "which must be
> > > distributed under... " clause in 3a, but simply caused by the fact that those
> > > complete sources are considered to be a derived work of the Program under
> > > copyright law (whence a work based on the Program),
> >
> > I don't agree with this statement.  When I combine a short story by two authors
> > in an anthology, neither story is a "derived work" of the other.  Of course the
> > combined anthology is a derived work of both.
>
> And the complete sources are analogous to the combined anthology. So you agree
> with me.

No I don't.  I am not combining the library and the Program into one work (like one
tar.gz file); they remain separate works.  The issue is the one I raised above:  does
the GPL requiring you to distribute both magically combine them into a single work for
copyright purposes, and I doubt it does.  The better analogy would be, you license me
to distribute a copy of "1984", but tell me that if I distribute that book I must also
distribute your own fiction book, "Marc's Space Tales".  Now if I distribute both of
these to a customer, as separate books, I do not think they constitute an "anthology",
and I do not think that somehow now a separate "work" has come to be.  This even
though I am distributing them together b/c of a contractual obligation.

[ . . . ]

> > > In particular your formulation is not clear about what to do
> > > about modifications that are simply additions of code copyrighted by somebody
> > > else (but with a sufficiently permissive licence to allow this); you cannot
> > > simply replace its licence by GPL (I know how strongly you feel about this).
> >
> > Then you couldn't redistribute it.  My clause is truly "viral".  The GPL, as
> > written, is not.  The clause would require all authors to license under the GPL
> > (of course they could license under other licenses as well, but the GPL would
> > have to be one of them).
>
> So under your formulation, one couldn't use any X or BSD code.

Nor under your reading of the GPL, for that matter.

Ciao,

Andreas


Reply to: