Subject: Re: set.lisp redefines POWERSET / {} for sets
From: Raymond Toy
Date: 05 Mar 2003 14:52:26 -0500
>>>>> "Stavros" == Stavros Macrakis <stavros.macrakis@verizon.net> writes:
Stavros> About using the CL package system, be aware that it affects not only
Stavros> function names, but all symbols in a package. That includes special
Stavros> variables, names of get/put properties, expression constituents (MPLUS,
Stavros> IRREDUCIBLE), etc. So it is not enough to export just functions that
Stavros> are used externally. I suppose it would be a decent first
Stavros> approximation, though, to make local any symbol which is only used in
Stavros> only one file, and which is not named $xxx, %xxx, or ?xxx.
I think there was some thread from about a year ago where MAXIMA was
the package for all of maxima (as is currently done), but the user
(and top-level loop) was in the MAXIMA-USER package.
Then only certain symbols from MAXIMA were exported. This would avoid
some weird things like the user typing y but getting Y printed out,
but typing x and getting x. (Assuming Y was a symbol already defined
in maxima.)
I think someone did some of the upfront work to do this and it worked,
but obviously we haven't actually put it in.
Ray