anchor.diff:  
   (defmethod unsubscribe ((sub object) (obj object) state)
     (if (not (subscribed? sub obj state))
  -      (error "not suscribed to state")
  +      (error 'error-invalid)
         (setf (gethash state
   		     (subscriptions-of obj))
   	    (delete sub (gethash state
  
positive.code: 
  (defmethod subscribe ((sub object) (obj object) state notification)
    (if (subscribed? sub obj state)
        (error "already subscribed to state")
        (not (null (push `(,sub . ,notification)
  		       (gethash state
  				(subscriptions-of obj)))))))
  
negative.code:   (multiple-value-bind (subscribers state-present?)
        (gethash state (subscriptions-of obj))
      (if (not state-present?)
  	(error 'error-invalid)
  	(dolist (sub subscribers)
  	  (funcall (cdr sub)
  		   (car sub))))))
  