Re: bug in clsql MOP usage? -- change-MOP-class forbidden
Anthony Juckel <[email protected]>
| Newsgroups | gmane.lisp.clsql.devel |
|---|---|
| Message-ID | <[email protected]> |
On Mon, 6 Dec 2004 16:48:35 -0700, Kevin Rosenberg <kevin-HJRc7zDS/[email protected]> wrote: > > Here's what Bruno Haible (author of CLISP's MOP) said on this issue: > > >Yes. There are four things that are not allowed with > > >slot-definition objects: > > Is he talking about "not allowed" with CLISP's MOP or is his referring > to statements in the AMOP book? I don't have the AMOP handy (I loaned > it to a friend). But, in general, I don't see a good reason to change > something that works on Allegro, Lispworks, OpenMCL, CMUCL, SBCL, and > SCL. Rather, my goal is to add CLISP to that list. I figured I'd throw in a reference, since I do have AMOP handy: "Initialization of a slot definition metaobject must be done by calling make-instance and allowing it to call initialize-instance. Portable programs must not call initialize-instance directly to initialize a slot definition metaobject. Portable programs must not call shared-initialize directly to initialize a slot definition metaobject. Portable programs must not call change-class to change the class of any slot definition metaobject or to turn a non-slot-definition metaobject into a slot definition metaobject." (AMOP, p 203) I'm not necessarily voting for strict AMOP compliance, but I thought it would be worthwhile to at least have the quote handy for the sake of discussion. Anthony W. Juckel