Re: How long is it acceptable to leave *undistributable* files in the kernel package?
Joe Wreschnig writes:
> Step by step, tell me where you start to disagree:
> If I write a program that contains the entire ls source code as one
> large C string, and then prints it out, that is a derivative work of the
> ls source.
I disagree here. Why do you claim that is derivative work? Note that
the GPL does not use "derivative work" in quite the same sense as US
copyright law: the GPL includes compilations in the term, but excludes
many of them from that treatment at the end of section 2.
Several (a plurality, if not majority) of US federal court districts
use the Abstraction, Filtration and Comparison test to determine
whether one computer program infringes on another's copyright --
basically a test for derivative-work-ness under the meaning of the
Copyright Act. Google it for background, but for want of a better
test, I think it is a reasonable process to use here.
The abstraction part is to analyze the program, first as a whole, then
at successively lower levels, to determine how it operates. Applying
the highest level of analysis to this program, its purpose is to print
out a string. It does not care what that string is; the string is
just along for the ride, so to speak. Filtration removes any elements
that are fixed by the purpose of the code, leaving only the creative
(and therefore copyrightable) elements. Do you think there is some
creative element in printing a string? The comparison stage is a
no-op if there was no creative element from the first two stages.
Unless there is some creative element in embedding or printing the
string, the AFC test suggests that the combined program is a
compilation rather than a derivative. Perhaps another test is more
appropriate, but I don't know of one.