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.