[clean-list] Licence Issues

Dr Mark H Phillips mark@austrics.com.au
19 Sep 2002 11:55:17 +0930


Hi,

A while ago I was interested in learning Clean, but was
put off by licencing issues.  However I was told that with
the release of Clean 2, it would be open-sourced.  I decided
I would wait till then.  Now that it has been released, I
find that it is only available under the LGPL for non-commercial
purposes.  See:

http://www.cs.kun.nl/~clean/Download/License_Conditions/license_conditions.html

Unfortunately this means that I will probably use
Haskell and/or Mercury which have no such restriction.

I can understand the Clean Group wanting to receive a financial
return for the work they put into Clean, but I wonder whether
there is a better way.  I also wonder whether their method
of "half open-sourcing" their code will achieve the outcome
they desire.

There are two issues as I see it:

1. Is "half open-sourcing" code even possible?  Ie, is the LGPL
compatible with the extra restriction "but available for
non-commercial purposes only"?

2. By only going half-way with open-sourcing, will this unnecessarily
scare away potential users?  Isn't there a better way?

By the way, I hope this email doesn't come across as being
confrontational.  It isn't intended that way.  I only write it because I
felt some honest feedback might be helpful.

Anyway, expanding on issue 1:

In the preamble to the LGPL we read: "Our General Public Licenses are
designed to make sure that you have the freedom to distribute copies of 
free software (and charge for this service if you wish); that you 
receive source code or can get it if you want it; that you can change 
the software and use pieces of it in new free programs; and that you are
informed that you can do these things."  If I understand things
correctly, once a person has a copy of an LGPLed piece of software,
they are able to then freely distribute it in accordance with the LGPL.
They are able to do this without tacking on the "but available for
non-commercial purposes only" clause.  So if Joe Bloggs wants to use
Clean for commercial purposes, all he need do, is get a friend
to download it for non-commercial purposes, and then copy the friend's
version under the provisions of the LGPL.  The commercial restriction
would disappear.

What I am trying to point out, if my understanding of LGPL is
correct, is that the LGPL doesn't really allow "but available for
non-commercial purposes only" to be tacked on.  I could be wrong.
I am not a lawyer.  But that is the way it appears to me.

And now to expand on issue 2:

In many companies, functional programming is virtually unheard of,
let alone used.  Convincing ones company to use __any__ kind of
functional programming language would be hard enough, let alone
one which had commercial licencing restrictions.  For someone 
working in this kind of commercial environment, the safest strategy
is to stick with functional languages which are fully open-sourced.
This way they may be experimented with, without worrying about
licencing implications.  And if they prove useful, their use will
be more easily justified to management.

In other words, by only half open-sourcing Clean, I suspect many
potential commercial users will stick to languages like Haskell,
Mercury and OCaml instead.  Perhaps there is a better way??

Well I thought I should raise these matters.  Obviously I would
prefer the Clean Group to fully open-source Clean, but whatever
they decide, I wish them the best.

Cheers,

Mark.