On Wednesday, Mar 17, 2004, at 21:36 Europe/London, Rob Arthan wrote:
On the other hand, GPL is too strong because it would appear to make it impossible for a company to develop software and distribute it with Poly/ML in such a way that they could retain their code as closed source. It's possible that the "Lesser GPL" that is used for libraries might be acceptable.
I think the GPL is actually much less restrictive than many people think (ProofPower is distributed under GPL, although I did agonise over this for a long time).
The relevant paragraph of the GPL is this:
2 b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
I don't believe that code compiled with a compiler counts as "derived from the compiler". The situation would, of course, be a bit less muddy if one had true separate compilation for ML (but even with gcc, compiled object code will contain compiled open source libraries, and I don't believe that the above paragraph means you can't sell binaries compiled with gcc).
Regards and apologies for this long off-topic diversion,
It may be slightly off-topic but this issue of the licence is really quite important and I'm keen to get a feel for what people think about it.
The situation you describe is the reason that there's a difference between the GPL and the "Lesser GPL". Although I haven't read these through in detail I understand that gcc libraries are distributed under the Lesser GPL precisely because it doesn't include the clause you've quoted. If Poly/ML were distributed under the full GPL it would (as far as I can see) be impossible for a user to distribute a complete binary containing the Poly/ML run time system and database and also containing code that the user wanted to keep closed.
Regards, David.
2 b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
Rob> I don't believe that code compiled with a compiler counts as Rob> "derived from the compiler". The situation would, of course, be a Rob> bit less muddy if one had true separate compilation for ML (but Rob> even with gcc, compiled object code will contain compiled open Rob> source libraries, and I don't believe that the above paragraph Rob> means you can't sell binaries compiled with gcc).
Now that David has continued this thread, I feel better about posting this nitpick.
It's not "you can't sell", but "you have to publish the source". Right?
On Monday 22 March 2004 18:40, David Matthews wrote:
On the other hand, GPL is too strong because it would appear to make it impossible for a company to develop software and distribute it with Poly/ML in such a way that they could retain their code as closed source. It's possible that the "Lesser GPL" that is used for libraries might be acceptable.
I had a look at these licenses earlier - and certainly GPL seems too restrictive for this.
I've read the relevant parts of the LGPL, and can make head nor tail of how it could or could not be applied, and still allow closed source development in this context.
If the LGPL isn't appropriate, then perhaps one alternative would be a dual license in the same vein as Trolltech with Qt: one license for closed source programs, the other GPL.
Regards, Martin