[elephant-devel] Re: recreate-instance-using-class
Ian Eslick
eslick at csail.mit.edu
Tue Jan 8 16:24:08 UTC 2008
On Jan 8, 2008, at 11:08 AM, Alex Mizrahi wrote:
> IE> our learning. My guess is that getting all this right can best be
> IE> accomplished by rationally designing all the functionality from
> IE> scratch, and rewrite the persistence protocol as necessary to
> IE> accommodate the new design.
>
> the way it was working before "the patches" seemed to be more-or-less
> consistent to me.
> at least it wasn't that confusing..
I think the problem is that initialize-instance gets called each time,
so if you define an :after method on it for object creation time - for
example that computes a specific slot value, then that code gets rerun
on object re-initialization and clobbers any updates that happened in
the meantime.
Please correct me folks if that isn't the experience or there are
other issues too.
> initialize-instance wasn't very pretty, but at least it was possible
> to make
> it working as it should.
> it seems reasonable to me that users who need distinguish initial
> creation
> from re-creation can check this in their code and act accordingly.
>
> separate generic function for transient initialization might look
> cleaner,
> but it can seem more complicated to users..
Actually this would happen as expected. Objects loaded into memory
would automatically get the initforms of the transient fields, unless
they wanted to override the default by calling the special generic
function.
>
>
> _______________________________________________
> elephant-devel site list
> elephant-devel at common-lisp.net
> http://common-lisp.net/mailman/listinfo/elephant-devel
More information about the elephant-devel
mailing list