Subject: Re: Information about SWI-Prolog (GPL license)

From: Jan Wielemaker <[email-masked]>
Date: Wed, 13 Dec 2000 10:04:18 +0100

On Wed, 13 Dec 2000, you wrote:
>Dear Sir,
>	   I'm really sorry to write you again on the same subject, but I realize
>I haven't clearly told you that I intend to sell my small program to
>schools. Is it enough to distribute only my prolog sources to comply to the
>GPL?

That depends on the structure of the remainder of your program. 
Basically the GPL acts as a `license virus', forcing everything to
GPL(-compatible) that is connected to it.  Somewhere of course this has
to stop.

There is quite some discussion on this, but a general rule of thumb
that it stops when calling external programs (through CreateProcess(),
or POSIX system()) or when it hits the API distributed natively by the
OS on which the GPL'ed program is running.

So, if you have Prolog based executable called as a process in part of a
larger system it suffices to distribute the Prolog source under a GPL
compatible license.  If you embed (using the foreign interface), both
the C(++) and Prolog source should be GPL'ed.  If you use your own
foreign libraries you need to publish their source too.

	Regards --- Jan