What's a POS??

Kelly Murray kem@Franz.COM
Sat, 10 May 1997 15:29:10 -0700


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


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.

-Kelly Edward Murray