Sam Steingold wrote:
>>As CLISP's copyright states, to be an independent work a program must
>>"only reference external symbols in CLISP's public packages (namely
>>the packages COMMON-LISP, COMMON-LISP-USER, KEYWORD, EXT) ..."
>
> the crucial part is the next phrase you omitted:
>
> "i.e. if they don't rely on CLISP internals and would as well run in any
> other Common Lisp implementation."
>
> the idea is that any application that does not _require_ CLISP to run
> is _not_ infected by CLISP GPL.
That's nearly the idea. But the phrase is: "... would as well run in
_any_ other Common Lisp implementation", not "... would as well run in
_some_ other Common Lisp implementation". So the idea is that
applications that are written in _portable_ Common Lisp are treated
as independent work.
> CLOCC/PORT is, in fact, a cross-platform portability kit which runs
> under CLISP, CMUCL, ACL, LW (and soon GCL - as soon as they fix
> DEFPACKAGE &c). Therefore it is not covered by GNU GPL (but by GNU LGPL
> with Franz clarification). I.e., it does _not_ infect software that
> uses CLOCC/PORT with GNU LGPL.
I agree here. clocc/src/port/sys.lisp supports so many CL
implementations that for practical purposes it meets the
"in _any_ other Common Lisp implementation" clause.
> What's worse, VARIABLE-SPECIAL-P relies on SYS::SPECIAL-VARIABLE-P
> which is not exported in CLISP - and probably won't be.
Nevertheless, the aim being to extend the limits of portability (not
to hijack CLISP internals), this doesn't bring CLOCC's sys.lisp under
GPL.
Bruno