[sword-devel] Sword license

Jimmie Houchin sword-devel@crosswire.org
Fri, 17 Jan 2003 09:55:22 -0600


Derek Neighbors wrote:
> Jimmie Houchin said:
>>If I read the Sword/JSword source code and from that design/information
>>write (port would be accurate?) classes, methods, etc. in Squeak to
>>process Sword Modules would I be obligated to also use the GPL?
> 
> Copyrighted works are copyrighted works.  I guess it might be best put,
> think of it as writing a "research paper".  If you plagarize and you dont
> use the GPL you could be confronted by the author of the original work. 
> If you put in your own words you are ok. :)  That might be making it too
> simple, but in essence you are granted the right to study the code under
> the GPL.  You may not however plagarize the code and "distribute" the
> modified version without being bound by the terms of the GPL.  Certainly
> you could mimic functionality and be ok.  As most GPL programs wouldn't
> exist today if they were not mimicking some proprietary program in which
> they are modeled after.

It would never be an exact port as Smalltalk is quite different from 
C++/Java. The code size would shrink by magnitudes.

Even if I could technically not be bound by the GPL, I could not violate 
the spirit of the author's wishes. I will either have authorization or 
not proceed.

>>The reason I ask is because of the viral nature of the GPL. GPL is not
>>appropriate for any non-GPLed Smalltalk. Smalltalk source is in an
>>image. All of it is linked by GPL definition. Any use of GPL code in a
>>Smalltalk image compels the entire image to be GPLed. This is not
>>possible.
> 
> I am not a Smalltalk expert, but I if "Smalltalk" is the issue why not use
> "GNU Smalltalk"?  I believe there may even now be a GPL version of Squeak.
> 
> ( http://www.smalltalk.org/versions/GNUSmalltalk.html )

Smalltalk is/isn't the issue per se. Squeak is not and will not ever be 
GPL. The current license is via Apple. The Squeak community is for more 
free and open than the GPL and if Squeak were ever relicensed it would 
be more MIT/BSD like than GPL. It's much more of a use, enjoy, just 
don't blame us community.

GNUSmalltalk is not an option. It is not crossplatform. It doesn't run 
on Windows, Mac, BeOS, Zaurus, iPaq, WinCE, etc... Also GNUSmalltalk if 
I remember correctly is what is called headless in the Smalltalk 
community. This means it has no GUI. That makes it no good for a frontend.

>>I hate to contribute to the proliferation of licenses. But is Crosswire
>>open to such a variance for image based systems like Smalltalk?
>>ie: a dual license? I do not necessarily no which license would be most
>>appropriate for Crosswire. The Squeak License makes no obligations for
>>use of source. It is more close to the MIT or BSD licenses.
> 
> I think changing SWORD to an MIT or BSD license is a bad idea.  As we have
> seen on this very list the savage greed (or whatever you want to call that
> display) of the "online bible" folks.  People truly can have other than
> the kingdoms work as a potential agenda and an MIT/BSD license would let
> them run with that much more than the GPL would.

I have no desire to see Sword under a MIT or BSD license. I have no 
problem with people who use Sword code being obligated to share and 
return to the community what they have based upon that code.

I have no such problem with similar obligations or responsibilities 
coming with any code I write based on Sword sources. In other words any 
modifications to my code would have to be offered under equal terms and 
any code which inherits would be so obligated. Code which merely is used 
by composition (like linking) would not be so obligated.

The problem is merely that with the GPL (and LGPL) it affects the entire 
  Squeak image. It is like installing Sword on a Windows machine and 
thereby making everything on your computer GPL. Squeak/Smalltalk has no 
external source code. All Squeak source code is inside of the Squeak 
image. You can think of the image as a filesystem. To the OS it looks 
like a single file. To Squeak it is 1000s of objects.

If GPL code gets inside that single file (image) it impacts the entire 
file (image). That is probably impossible as no one has the authority to 
do such. All the contributors who have code in the image would have to 
either agree or have their code removed.

>>Thanks for any help in understanding my options.
> 
> What is RMS' solution for Squeak applications that what to be GPL'd?  I
> would imagine this could be solved with a slight modification that says
> its ok to "link" to smalltalk(squeak).  If the SWORD team were willing to
> add this one liner to the license, they would still be afforded all the
> goodness of the GPL but allow smalltalk users to make variations.  This
> was for example the solution RMS offered to the Qt library problems before
> they changed their license.

Linking to is not a problem. I can use Sword libs which are external to 
Squeak. I just can't have GPL code within Squeak.

If RMS. et al. were to view the Smalltalk image as a filesystem and 
apply licenses to only packages/modules within that image associated 
with the license of its choice. This would not be problem.

I can with download all kinds of software for Squeak with different 
licenses. All if it goes into the image to be used.

I hope what I've said makes sense.

Thanks.

Jimmie Houchin