Open Source License Question
Andrew Dalke
adalke at mindspring.com
Sun Oct 31 14:10:16 EST 2004
Donnal Walter wrote:
> This is not an exact analogy, but if Python were licensed under GPL (or
> OSL), would *all* programs written *in* Python need to have the same
> license?
It's in the GPL FAQ:
http://www.gnu.org/licenses/gpl-faq.html#IfInterpreterIsGPL
"""
If a programming language interpreter is released under the GPL,
does that mean programs written to be interpreted by it must be
under GPL-compatible licenses?
When the interpreter just interprets a language, the answer is
no. The interpreted program, to the interpreter, is just data;
a free software license like the GPL, based on copyright law,
cannot limit what data you use the interpreter on. You can run
it on any data (interpreted program), any way you like, and
there are no requirements about licensing that data to anyone.
However, when the interpreter is extended to provide "bindings"
to other facilities (often, but not necessarily, libraries),
the interpreted program is effectively linked to the facilities
it uses through these bindings. So if these facilities are
released under the GPL, the interpreted program that uses them
must be released in a GPL-compatible way. The JNI or Java Native
Interface is an example of such a facility; libraries that are
accessed in this way are linked dynamically with the Java programs
that call them.
Another similar and very common case is to provide libraries with
the interpreter which are themselves interpreted. For instance,
Perl comes with many Perl modules, and a Java implementation
comes with many Java classes. These libraries and the programs
that call them are always dynamically linked together.
A consequence is that if you choose to use GPL'd Perl modules or
Java classes in your program, you must release the program in a
GPL-compatible way, regardless of the license used in the Perl
or Java interpreter that the combined Perl or Java program will
run on.
"""
Andrew
dalke at dalkescientific.com
More information about the Python-list
mailing list