[Gsll-devel] status.text & clisp
Sam Steingold
sds at gnu.org
Wed Aug 11 03:48:12 UTC 2010
Hi Liam,
On 8/10/10, Liam Healy <lhealy at common-lisp.net> wrote:
>
> On Tue, Aug 10, 2010 at 1:36 PM, Sam Steingold <sds at gnu.org> wrote:
> > (symbol-plist (sys::closure-const (slot-value (nth 20
> > (CLOS:GENERIC-FUNCTION-METHODS #'SET-ALL)) 'CLOS::$FAST-FUNCTION) 0))
> > NIL
> >
> > i.e., the method FUNCALLs the property of the uninterned symbol which is NIL.
>
>
> If I make a small modification to GSLL (attached) so that function
> names like #:|gsl_vector_complex_float_set_all| are instead interned,
> e.g. '|gsl_vector_complex_float_set_all|,
> then I get all tests to pass in my (old) version of CLISP:
> (lisp-unit:run-tests vector-set-all)
> VECTOR-SET-ALL: 12 assertions passed, 0 failed.
>
> Now it seems to me that what FSBV is doing with symbols (set/get
> properties) should work equally well on uninterned or interned
> symbols, so the original should work fine. Is that correct?
> Why does CLISP lose the property list binding when the symbol
> is uninterned?
because it is not the same symbol. :-(
this is a very old bug:
https://sourceforge.net/tracker/?func=detail&aid=836838&group_id=1355&atid=101355
the workaround is to use `let' or `locally' instead of `progn',
--
Sam Steingold <http://sds.podval.org>
More information about the gsll-devel
mailing list