What's a POS??

Martin Cracauer cracauer@wavehh.hanse.de
Mon, 12 May 97 13:20:59 +0200

Kelly Murray writes:
> Let me say how AllegroStore works.
> 1. It has both transient and persistent memory, everything is transient
>    by default.
> 2. It has a metaclass, persistent-standard-class, which is used to
>    define a class to have persistent instances.
>   e.g. (defclass persistent-foo () (..) (:metaclass persistent-standard-class))
> 3. Only CLOS instances of persistent-standard-class are persistent.
> 3.5 Code runs the same on both persistent and transient instances.
> 4. The slot values of a persistent instance are also persistent.
> 5. Writing a transient value into the slot of a persistent instance
>    makes it persistent.  
> 6. All persistent instances are invalid unless a transaction is active

Could you explain what exactly a transaction can look like in
> My idea is slightly different, and still under development,
> but one difference is I think all class instances
> should be able to be persistent by having them
> be pointed to by existing persistent objects,
> or by explicitly calling (make-persistent obj) on the instance.

In what way is "pointed to by existing persistent objects" different
from the above "Writing a transient value into the slot of a
persistent instance makes it persistent."? 

Martin Cracauer <cracauer@wavehh.hanse.de>
Fax +49 40 522 85 36