scripts and copyright licenses

Justin Wells jread at semiotek.com
Fri Nov 12 20:14:57 UTC 1999


What can be done in a copyright license to effect something like a  
copyleft for scripts? The issue also applies to dynamically linked 
libraries as well, and will become a bigger deal as technologies 
likes CORBA and Java's RMI spread. 

With ordinary C code, the GPL attaches to derived works because you 
have to include material from the source program in your derived work,
through the process of compiling and linking, before you distribute.

However, script languages don't have a link stage, and dynamically 
linked languages defer linking until runtime (Java, CORBA, etc.)

With a strongly typed language like Java you get a little bit of 
respite from the fact that users would have to build your API into 
their application, and in theory the API could be copylefted. However
new technologies like Java Beans allow you to get beyond even this 
by introspecting objects at runtime to find out what they contain.

I would like to distribute a library under copyleft terms, somewhat 
like the GPL.  Except, because of the things I'm describing above, 
I'm not sure it's actually possible.

The copyleft would come into effect at link time, but since this happens
after distribution, there isn't much you can do to ensure that the 
parts being linked with are unencumbered. 

Or is there?

You could restrict against linking to encumbered libraries, but that
opens up one nasty can of worms. I suspect you wind up linking most 
code against a lot more libraries than you think. The first problem 
is the OS's libraries. The second problem is that it prevents use 
with any commercial development tool that might include its own 
libraries--things you wouldn't normally want to restrict. 

Ugh. 

Any thoughts?

Justin




More information about the License-discuss mailing list