lilypond-user
[Top][All Lists]
Advanced

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

Re: Lilypond \include statements and the GPL


From: James Harkins
Subject: Re: Lilypond \include statements and the GPL
Date: Thu, 4 Apr 2013 03:16:44 +0000 (UTC)
User-agent: Loom/3.14 (http://gmane.org/)

Wols Lists <antlists <at> youngman.org.uk> writes:

> On 03/04/13 10:22, lists <at> ursliska.de wrote:
> > I think there is one thing this discussion proves impressively: Things
> > are much less non-ambiguous than most of the participants assume.
> 
> Something I've learnt from my time on Groklaw is that the GPL is, in
> fact, extremely clear.
> 
> The problem is that many people read into it what they want to see. I've
> been guilty of that in the past 
> 
> And the problem here is very simple - it is the question "What
> constitutes a derived work?".

At risk of prolonging the discussion (which, I'll state again, really
doesn't need much further prolongation without actual legal
input)... Here are the questions where I would be interested to know
the FSF's legal position. I think these questions provide additional
detail on "What constitutes a derived work?"

1. Is Lilypond an interpreter, or more like a compiler/linker pair?
(The GPL's "covered work" seems to depend on the idea of linking. This
idea is fuzzy to me. Intuitively, it seems to me that Lilypond code
that merely invokes LP commands is more in the realm of interpreter
behavior -- including "\include.") It's hard for me to imagine how LP
could be considered a compiler/linker.

2. Related to #1, I see the phrase "intimate data communication"
floating around as the standard for distinguishing a "covered work"
from one that is not covered. Possible test case:

\set tupletSpannerDuration = #'(ly:make-moment 1 4) \times 2/3 { c8 [
d e ] d [ e f ] } g4

Does it count as "intimate data communication" to quote a scheme
function *invocation* in the LP code? (I tend to think if yes, if
merely calling a GPL'ed function in an interpreter requires the
calling code to be GPL, it would essentially erase the distinction
between interpreting and compiling/linking -- but the GPL supports
this distinction! So I highly doubt the answer would be yes.)

3. Scheme functions in a .ly file that invoke LP scheme functions
(without modifying or quoting those functions) would seem to me to
fall in the same category. The question for the FSF is whether it
constitutes "linking" if I write (ly:make-moment 1 4) in a scheme
function. Intuition would say no, it's not linking, but since when
does the law have anything to do with what is intuitively right? [1]

4. It seems almost certain to me that, if you copy the text of a
scheme function from LP's source into your .ly or .ily and modify it
(if you don't modify it, why would you bother copying it?), at least
this part of the ly code then becomes a derivative work requiring
GPL. As I understand it, the reason to require the GPL when releasing
derivative works is that modifications enhance the behavior of a GPL
program, and those enhancements should be contributed back to the
community. Releasing the entire LP source code for a piece, /including
a copied/modified function definition/, under restrictive copyright
would violate that intent.

5. In #4's case, is there a distinction between the GPL'ed new scheme
code and the Lilypond score code that invokes the new function? I
guess, if LP's processing of the score code is considered
"interpreting" the code, then you could make a distinction between
*providing* a new function to the interpreter (GPL) and *using* the
interpreter (non-GPL). More concretely -- could you release your new
function as a GPL extension to LP in one file, and *use* the function
in another file that is not GPL (where the non-GPL file contains no
scheme definitions)?

I don't know the answer to these questions. From what I've read on
this list, nobody else *really* knows the answer either. We have a lot
of educated guesses (with varying degrees of education). So at this
point, I'll say explicitly that I'm not interested in "opinions" about
the questions, and I'm not going to respond to those. (Though, my
"opinion" about them seems close to David K's reading.) I write these
out with the hope of clarifying (?) the questions and suggesting some
questions for Joseph to ask in his letter.

hjh

[1]
http://www.nypost.com/p/news/local/ny_cut_of_bagel_dough_YEhNdwO7ZwlUO555GQ4
rNN




reply via email to

[Prev in Thread] Current Thread [Next in Thread]