anchor.diff:          (set-index-fn (q-set-index-fn q)))
       (unless index
         (error 'item-not-found-error))
  +    (funcall set-index-fn old nil)
       (funcall set-index-fn new index)
       (setf (aref items index) new)
       (if (funcall compare-fn new old)
  
positive.code:     (unless index
        (error 'item-not-found-error))
      (heap-delete (q-items q) index (q-compare-fn q) (q-set-index-fn q)))
    q)
  
  ;;;; The Heap Implementation of Priority Queues
  
negative.code: it. Signals empty-queue-error if the queue is empty."
    (if (queue-empty-p q)
        (error 'empty-queue-error)
        (let ((min (heap-extract-min (q-items q) (q-compare-fn q) (q-set-index-fn q))))
          (funcall (q-set-index-fn q) min nil)
          min)))
  
  (defun queue-insert (q item)
    "Insert the item by priority according to the compare
  