[rucksack-devel] Some other things

Levente Mészáros levente.meszaros at gmail.com
Mon Jan 15 11:49:13 UTC 2007


Hi,

I have some other questions not directly related to export. Is it
planned to support weak references? Maybe both as a persistent slot
option and as a separate object?

I implemented the serialization of structures using SBCL, this was
fairly trivial dispatching on structure-object. I did not look at
other implementations but will you include such patches? Since I am
not using my linux box now you can find it in the attachment as a
separate file not a patch this time.

I also noticed that some slots (rucksack/transaction/etc.) of
persistent classes are persistent-effective-slot-definitions even
though they should not be. I guess this can be fixed in
direct-slot-definition-class and effective-slot-definition-class by
checking on the persistence flag.

I tried to implement a persistent base class called audited-object
which stores the time of creation, the time of last modification, last
modifier, etc. In principle an :after method on (setf
slot-value-using-class) could make it, but unfortunately I could not
distinguish between code setting the persistent slot outside of
rucksack and code internal to rucksack itself. Maybe rucksack could
use a function slot-value-using-class-internal which would bind a
special variable so that overriding svuc will be able to distinguish
between loading the object from the disk and setting a slot value by
the user.

While I like the way with-transaction works I think most of the time
user code will not pass in any parameters to it (see tests for
example), so maybe it would be better to call the current one
with-transaction* and introduce another one without any parameters
called with-transaction. What's you opinon about this?

I you have other tasks to do and would like I could spend some time on
these things.

Cheers,
levy

-- 
There's no perfectoin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: serialize.lisp
Type: text/x-lisp-source
Size: 1787 bytes
Desc: not available
URL: <https://mailman.common-lisp.net/pipermail/rucksack-devel/attachments/20070115/a3b1e285/attachment.bin>


More information about the rucksack-devel mailing list