[rucksack-devel] Two patches

Arthur Lemmens alemmens at xs4all.nl
Fri May 19 15:06:26 UTC 2006


Nikodemus wrote:

> ** implements merging of slot-properties in
>    compute-effective-slot-definition. (If any ancestor is
>    persistent the new one is too, if exactly one ancestor is
>    indexed the new one is too.)

Do you have a reason for doing it this way?  I'm not too sure
about the indexed slots, for example.  Indexing is very expensive,
so I can (vaguely) imagine situations where you'd want a slot
of a parent class to be indexed but you don't want that for the
same slot of a child class.

I suppose we'd have to write out some example cases (as realistic
as possible) to get a feeling for the best solution here.  At
the moment I'm not convinced that your new way is better than
my old way.  I'm not saying it's worse either; I just don't know.

> ** adds a common ancestor PERSISTENT for PERSISTENT-DATA and
>    PERSISTENT-OBJECT.

Hehe.  I actually used to have it this way, but split them up
at a certain point.  Unfortunately, I can't remember why I did
that; I only remember that I thought I had a good reason for
doing it at the time.  I'll try to find if I've written down
an explanation somewhere.

> ** refactors cache-touch-object to accept objects instead of
>    object-ids

That looks OK to me...

> which means cache-touch-object on clean in-memory objects can
> work before the object has been deserialized.

...but I don't really understand what you're saying here.  Do
you mean 'serialized' or do you really mean 'deserialized'?  Why
would you want to touch a clean in-memory object?  If it's
clean, you shouldn't touch it, right?

Arthur




More information about the rucksack-devel mailing list