On 02/04/2013 22:01, Joseph Rushton Wakeling wrote:
On 04/02/2013 09:50 PM, Tim McNamara wrote:
OK, now let's consider a specific example. Here's a bit of C code that
generates 100 random numbers and calculates their sum.
//////////////////////////////////////////////////////////////////////////////////////
#include <stdio.h> #include <gsl/gsl_randist.h> double
random_number_sum(const gsl_rng *r, size_t n) { size_t i; double x =
0.0; for(i=0; i<10; ++i) x += gsl_ran_flat(r, 0.0, 1.0); return x; }
int main(void) { size_t n = 100; gsl_rng *r =
gsl_rng_alloc(gsl_rng_default); double x = random_number_sum(r, n);
printf("The sum of %lu random numbers in [0, 1) is %g\n", n, x);
gsl_rng_free(r); return 0; }
//////////////////////////////////////////////////////////////////////////////////////
Let's go through it line by line. The first line tells the compiler,
when compiling, to make use of the standard library header describing
input and output. That doesn't matter -- it's a system library and
therefore irrelevant as far as licensing is concerned. The second line
tells the compiler to make use of the header file describing the
functions from the GNU Scientific Library (GSL) that implement random
number distributions.
Which is a header file, and probably not copyrightable.
Then you have a function which takes as part of its input a pointer to
the gsl-defined random number generator type, and which calls
internally the GSL function to generate a pseudo-random number from a
uniform distribution. Inside the main() function, there are calls to
the GSL functions to allocate and free memory in which to store a
random number generator. Now, just as in your case, I've not copied
either stdio.h or gsl_randist.h. I've not given them to you, either.
It's just an instruction to your compiler to look for these files when
trying to build the program, and if you try and compile this program
without those files present on your system, the compilation will fail.
Nor does this program contain any copyrighted content from those files.
(Function names and APIs are generally considered to be
uncopyrightable.) However, I think the consensus of opinion about free
software licensing would be that, in distributing to you this little
program, purely in source code form, not compiled or linked in any
way, I am still obliged to offer it to you under licensing terms that
are GPL-compatible, or else lose my right to use the GNU Scientific
Library.
You've just answered your own question. You have just said that this
program does NOT contain ANY copyrighted content from the gsl.
As such, it is not a derivative work. That's what the law says. If the
gsl people want to stop you using their library, they need the law on
their side. And the Judge will say "that's not a derivative work. go
away - oh and costs are awarded against you for a frivolous lawsuit, too!".
Cheers,
Wol
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user