anchor.diff:               (let ((slot (first slots)))
                  (cond ((null slot)
                         (values t))
  -                     ((not (is-localp (get-value slot)))
  -                      (values nil))
  -                     ((not (get-constraint-locality (get-constraint slot)))
  +                     ((or (not (is-localp (get-value slot)))
  +                          (not (get-constraint-locality (get-constraint slot))))
                         (values nil))
                        (t
                         (get-slot-locality (rest slots)))))))
  
positive.code: (defun is-localized-patternp (pattern)
    (declare (type (pattern pattern)))
    (get-locality pattern))
  
  (defmethod initialize-instance :after ((self pattern) &key (slot-list nil))
    (mapc #'(lambda (desc)
  
negative.code:       (values))))
  
  (defun set-pattern-locality (pattern bindings)
    (format t "~S~%" pattern)
    (labels ((is-localp (var)
               (let ((binding (lookup-binding bindings var)))
                 (cl:assert (not (null binding)) ())
                 (= (get-location binding) (get-location pattern))))
             (get-constraint-locality (constraint)
               (let ((obj (first constraint)))
                 (format t "looking at ~S~%" obj)
                 (cond ((null constraint)
                        (values t))
                       ((consp obj)
                        (get-constraint-locality obj))
                       ((and (variablep obj)
                             (not (is-localp obj)))
                        (values nil))
  