[rucksack-devel] Re: SHARED-INITIALIZE calling (SETF SLOT-VALUE-USING-CLASS)

Arthur Lemmens alemmens at xs4all.nl
Sun Sep 3 22:53:56 UTC 2006


Hi Pascal,

Thanks for your quick reply.

> I had exactly the same issue some time ago. The surprising thing is
> that a CLOS implementation is actually allowed not to use (setf slot-
> value-using-class) for object initialization

Ah, interesting.

> Check out the notes section of shared-initialize in the HyperSpec, there
> it is specified under what circumstances (setf slot-value-using-class)
> can be circumvented

Thanks for the link.

> The following is taken from ContextL, and is just a straightforward
> implementation of the shared-initalize specification.  Feel free to
> reuse it.

OK, that looks like a good solution to get Lispworks more in line with
SBCL (and I suppose some of the other MOP implementations).  I've just
written a quick Rucksack-specific hack that works the other way round:
it makes the other guys behave more like Lispworks.

Your approach is probably cleaner in the long run, but it would mean that
I'd have to rewrite more existing Rucksack code.

> I hope this helps.

Definitely.

Thanks,

Arthur




More information about the rucksack-devel mailing list