[pro] AMOP question: When and where is slot-value-using-class called?

Jean-Claude Beaudoin jean.claude.beaudoin at gmail.com
Mon Aug 4 08:44:30 UTC 2014


On Sun, Aug 3, 2014 at 12:50 PM, Pascal Costanza <pc at p-cos.net> wrote:

>
> - One reason why the change from slot name to slot definition metaobject
> was made is that it allows for better optimization of standard slot
> accesses that don’t need to go through user-defined methods on s-v-u-c and
> friends. In LispWorks, you need one extra step to invoke user-defined
> methods - you have to specify that slot access should not be optimized. In
> your example, the class definition for ‘foo should look like this to
> achieve this:
>
> (defclass foo ()
>   ((a :accessor foo-a :initarg :a)
>    (b :accessor foo-b :initarg :b))
>   (:metaclass tracked-class)
>   (:optimize-slot-access nil))
>
>
I see.  And are you cool with the pervasive opt-out nature of this
:optimize-slot-access option?
Looks pretty much like a quite clear rejection of the MOP slot protocol to
me.


> ...
>
> If they do then the CLOS subcommittee would be vindicated.
>
>
> That’s exaggerated. The AMOP book has a foreword to the specification
> which clearly states that this is preliminary work. Unfortunately, the
> foreword is not reproduced in the HTML version. Here is the text, to put
> things in perspective:
>
> ...
>
> Personally, I don’t believe that forward-referenced-class or
> ensure-class-using-class are the most important areas that need fixing.
> There are other issues that are more relevant.
>
>
>
Quite of a cliffhanger you've done here!  Are we going to be treated with a
sequel on the very subject of those issues?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/pro/attachments/20140804/cff93842/attachment.html>


More information about the pro mailing list