From: <ger...@t-...> - 2003-05-19 19:42:34
|
Christophe Rhodes <cs...@ca...> writes: > I have a slight problem with this that can probably be worked around; > essentially, I'm worried about enforcing declarations-are-assertions. > But that's mostly orthogonal to allowing SETF SLOT-VALUE itself, I > guess. CLISP, too, allows (SETF SLOT-VALUE) on :READ-ONLY T slots. One reason more to do the same then, I guess, if three implementations already follow that path. > I should say that I have a problem with the current implementation of > MAKE-LOAD-FORM-SAVING-SLOTS, too, in that there's no guarantee that > (SETF SLOT-VALUE) actually sets the value of a slot, in the presence > of arbitrary methods (maybe some user has installed an assertion in an > :around method, which our implementation of MLFSS violates, or > something). I don't know how reasonable it would be to implement > MAKE-LOAD-FORM-SAVING-SLOTS in terms of lower-level operators? > (e.g. CLOS-SLOTS-SET for object slots, %INSTANCE-SET for structure > slots?) CLHS seems to say that the init forms can consist of (SETF SLOT-VALUE)s, so I guess it's OK if they do. ACL does that too, it seems. But I dunno, IANALL ;). |