anchor.diff:  
   Exactly like TRANSACTIONAL-EFFECTIVE-SLOT."))
   
  +
  +
   ;;;; ** Inheritance
   
   (defmethod validate-superclass ((class transactional-class)
  
positive.code: the effect is the same as DEFCLASS, plus the default metaclass is
  TRANSACTIONAL-CLASS, slots are transactional by default, and it inherits
  from TRANSACTIONAL-OBJECT by default."
    (let1 direct-superclasses (or direct-superclasses '(transactional-object))
      `(eval-always
         (,defclass ,class ,direct-superclasses
           ,direct-slots
           ,@class-options
           (:metaclass transactional-class)))))
  
  ;;;; ** Initializing
  
  
negative.code: 
  ;;;; ** Slot definitions
  
  (let1 transactional-direct-slot-class (find-class 'transactional-direct-slot)
    (defmethod direct-slot-definition-class ((class transactional-class)
                                             &rest initargs)
      (declare (ignore initargs))
      transactional-direct-slot-class))
  
  
  
  (let1 transactional-effective-slot-class (find-class 'transactional-effective-slot)
    (defmethod effective-slot-definition-class ((class transactional-class)
                                                &rest initargs)
      (declare (ignore initargs))
      transactional-effective-slot-class))
  
  
  
  (let1 lambda-new-tvar (lambda () (new 'tvar))
    (defmethod compute-effective-slot-definition ((class transactional-class)
                                                  slot-name direct-slots)
      (declare (ignore slot-name))
      (let ((effective-slot (call-next-method))
            (direct-slots (remove-if-not [typep _ 'transactional-direct-slot] direct-slots)))
  