What's a POS??

Kelly Murray kem@Franz.COM
Mon, 12 May 1997 11:19:07 -0700

> Could you explain what exactly a transaction can look like in
> Allegrostore? 

(with-transaction ()

That is the user API.  

> 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."? 

Good question, I wasn't clear. Instances of non-persistent classes
can't be persistent.  AllegroStore generates an exception if this is

(defclass transient () (slot1) )
(defclass persistent () (slot1) (:metaclass astore:persistent-standard-class))

;; not allowed, generates error
(setf (slot-value (make-instance 'persistent) 'slot1)
      (make-instance 'transient))

There are reasons for this.  To lift the restriction requires a 
different implementation than AllegroStore uses to make things persistent.

-Kelly Edward Murray