[License-discuss] License incompatibility (was Re: Open source license chooser choosealicense.com

John Cowan cowan at mercury.ccil.org
Thu Sep 12 01:19:43 UTC 2013

Lawrence Rosen scripsit:

> I would guess that Bob's adding "a bunch of calls to syslog()" into
> Alice's work might create a derivative work of Alice's work, but that
> wouldn't convert "syslog()" itself a derivative work owned by either
> Alice or Bob, even if Bob statically linked it with Alice's program.

The GPL provides an exception for things like syslog() anyway; you can
link to it without triggering even disputable obligations.

> Why are you putting the burden on an over-clever source code compiler
> to detect derivative works?

Not what I meant.  If Alice's code contains the string "foobar" and so
does Bob's, a compiler might coalesce the two strings into one, in such
a way that the 0x62 in the object file's initialized-data segment could
not be unilaterally attributed to either Alice or Bob.

But in any case my point is that there is no bright line between a
derivative and a collective work.  If Bob's work is a derivative of
Alice's, then we can construct a sequence of alternate hypos by Bob
that lead right up to two separate modules of code, such as this:  Bob
interweaves his code into Alice's code (as in this hypo), Bob adds code
to the end of Alice's procedure, Bob adds new procedures to the end of
Alice's module, Bob adds a new module to Alice's module.

In all cases, Bob's contributions can be separated from Alice's
mechanically, even at the object level (absent coalescence as described
above).  Yet that fact is not determinative of collective work
vs. derivative work.

I Hope, Sir, that we are not                    John Cowan
mutually Un-friended by this                    cowan at ccil.org
Difference which hath happened                  http://www.ccil.org/~cowan
betwixt us.     --Thomas Fuller, Appeal of Injured Innocence (1659)

More information about the License-discuss mailing list