[Pharo-project] Fwd: License question

Stéphane Ducasse stephane.ducasse at inria.fr
Wed Oct 13 10:28:34 EDT 2010

Begin forwarded message:

> From: "Schwab,Wilhelm K" <bschwab at anest.ufl.edu>
> Date: October 13, 2010 2:46:31 PM GMT+02:00
> To: Paolo Bonzini <bonzini at gnu.org>
> Cc: "Fitzell, Julian" <jfitzell at cincom.com>, "stephane.ducasse at inria.fr" <stephane.ducasse at inria.fr>
> Subject: RE: [Pharo-project] License question
> Paolo,
> The language is not childish; it is a valid expression of how this looks to others; I know, because I had it blow up in my face.  I am fairly content to use GSL for its feature set and working around its foibles, only because I use it internally and GPL is not a concern.  I got a cold dose of reality in the form of resistance from other programmers - some of whom see the license as a legal virus.   After reading your "clone the API, then you can run fast as GPL or slow as MIT," I am more than ever aware of just how on the mark that characterization might be.
> Another indication of the extent of the problems with/from GPL arises from my planned use of the Pharo Inbox.  Put the code in there, and it's MIT; that's good.  But what mess does that cause with a binding to something that is GPL?  The answer is not to change the Pharo license, it is to exclude GPL code.  I can put something on my web site and allow people to grab it from there.
> The base of the GSL binding is (from memory) 100+ structure definitions (most of which are correct in spirit but not yet tested) and 1800+ function definitions.  It ends up being something like 20,000 things that have to be named and typed.  They are not much good without wrappers that help with memory management and control flow.  I would like to make at least some of the wrapper functionality available, but I am not willing to GPL it for fear of future problems using my own code.  If you are telling me that anything that directly or indirectly calls GPL code becomes GPL on release, that will impact how much of the code I can release.  One solution would be to clone and release just enough of the wrapper set to help people to roll their own wrappers, which might eventually spawn a clean-roomed set of wrappers.  A good MIT library will eventually appear, and when it does, I want to be able to move my higher level code to it.  I will not hobble that goal for short-term gains.  Childish?  Quite the opposite.
> Bill
> ________________________________________
> From: Paolo Bonzini [paolo.bonzini at gmail.com] On Behalf Of Paolo Bonzini [bonzini at gnu.org]
> Sent: Wednesday, October 13, 2010 3:50 AM
> To: Schwab,Wilhelm K
> Cc: Fitzell, Julian; stephane.ducasse at inria.fr
> Subject: Re: [Pharo-project] License question
> On 10/12/2010 08:13 PM, Schwab,Wilhelm K wrote:
>> nor do I want my code, other than the binding itself, affected by
>> GPL.
> Code that uses the binding is obviously affected by the GPL, just like
> if you used GSL directly in C.  It's not like using a different
> programming language is a magic wand that makes the GPL disappear.
> However, your code that does not use the binding will not be affected by
> the GPL.  Code doesn't fall under the GPL just because it lived for a
> short time in the same image.  In particular:
> 1) the GPL does not kick in until you distribute the code.  As long as
> GPL and non-GPL (or even GPL-incompatible) code resides in a private
> image (or even circulates within an institution such as a company) there
> is no distribution and the GPL is not involved at all.
> 2) let's say you juxtapose GPL and X11-licensed (MIT) code in the same
> image.  The non-GPL code doesn't use your bindings or any other GPL
> code, it's just placed together in the same image. This time you
> distribute the image, and in order to do so you must follow the GPL.
> However, you can still extract the X11-licensed code and distribute
> _that_ code under its own original license, or even as proprietary code
> since _that_ code's license is what counts.
>> It would be a shame to have to limit the a release to just the
>> binding, but if GPL starts to infect anything that connects to the
>> binding
> It doesn't "start to infect".  Please do not use such childish language.
>  The GPL simply "applies" to anything that connects to the binding,
> just like it would "apply" to anything that uses GSL using the C interface.
> You probably would not say that using proprietary source code in Squeak
> or Pharo "infects" it with a proprietary license.  You'd simply say "you
> have to respect the license of the proprietary source code", or you
> violate the copyright owner's rights.  The GPL is absolutely no
> different.  It tells you what you can do and what you cannot do.
> Very frankly: if you think the GPL has "infected" something, well, it
> didn't do anything on its own, it was _you_ who did something stupid.
> Paolo

More information about the Pharo-dev mailing list