[Haskell-cafe] Why Not Haskell? (sidenote on licensing)

Chris Kuklewicz haskell at list.mightyreason.com
Mon Aug 7 07:57:47 EDT 2006

There is a false statement that must be corrected, about NDA's.

Matthias Fischmann wrote:
> On Sun, Aug 06, 2006 at 10:46:16AM +0100, Chris Kuklewicz wrote:
>> [...]
>> The GPL only gets in the way if you put it there by choosing to derive work 
>> from GPL code.  Note that most commercial programs do not allow you the 
>> choice of deriving your work from theirs at all.  The GPL adds to your 
>> free-as-in-freedom: you can derive work from others' GPL work and you can 
> GPL also brings about restrictions to freedom-in-speech that are
> rarely mentioned: Say you develop the code for a client to run her
> production facilities.  This code contains sensitive information about
> the way the facilities work and must not fall into the hands of the
> client's competitors.  But if GPL is stuck to any part of the code and
> manages to infect the rest, the client can make you sign as many NDAs
> as there can be. 

The GPL is not a disease that "infect"s.  That is a metaphor made by people who 
hate such licenses.  The GPL does not blow in the window or from someone's 
sneeze and get "stuck" to code.  To introduce GPL derived code is a choice made 
be the programmer.  You can always choose not to derive from GPL code, and you 
can always change your mind later and rewrite the derived code so you can remove 
it.  Talking about biological metaphors is deliberately misleading.

>  ...the client can make you sign as many NDAs
> as there can be. 
> The GPL still entitles you to sell it.  I'm sure
> there are other scenarios in which the restritions that GPL places on
> the developer are equally prohibitive.

No.  You are wrong. Google for GPL and NDA gives 
http://www.gnu.org/licenses/gpl-faq.html :

> Does the GPL allow me to distribute a modified or beta version under a
> nondisclosure agreement?
>     No. The GPL says that anyone who receives a copy of your version
>     from you has the right to redistribute copies (modified or not) of
>     that version. It does not give you permission to distribute the
>     work on any more restrictive basis.
> Does the GPL allow me to develop a modified version under a
> nondisclosure agreement?
>     Yes. For instance, you can accept a contract to develop changes
>     and agree not to release your changes until the client says
>     ok. This is permitted because in this case no GPL-covered code is
>     being distributed under an NDA.
>     You can also release your changes to the client under the GPL, but
>     agree not to release them to anyone else unless the client says
>     ok. In this case, too, no GPL-covered code is being distributed
>     under an NDA, or under any additional restrictions.
>     The GPL would give the client the right to redistribute your
>     version. In this scenario, the client will probably choose not to
>     exercise that right, but does have the right.

As the developer you can sign an NDA and it will bind you.  But it will not bind 
the client.

> GPL/LGPL is interesting, LGPL v3 may turn into something cool or not.
> (I heard they have problems sorting out the above scenario, too, or
> something more tricky, I forgot.)  But placing restrictions on how the
> code may be used has lead to surprising problems.  BSD on the other
> hand is a safe bet.

Note that there are many people who will not do work on a BSD project since a 
company can just come along and take it.  People are free to choose GPL or BSD 
for their work and then other people are free to choose whether to derive work 
from them.  But if there was no GPL and the only choice was BSD then much of the 
current GPL'd work would not exist.


More information about the Haskell-Cafe mailing list