anchor.diff:  
   (defun begin-search
       (maximum-depth minimum-depth default-depth-increment !level! !continuation!)
  -  (stack-let ((*old-remaining-depths*
  -               (cons *remaining-depth* *old-remaining-depths*))
  -	      (*old-prev-depth-increments*
  -               (cons *prev-depth-increment* *old-prev-depth-increments*))
  -	      (*old-minus-next-depth-increments*
  -               (cons *minus-next-depth-increment* *old-minus-next-depth-increments*)))
  +  (let ((*old-remaining-depths*
  +          (cons *remaining-depth* *old-remaining-depths*))
  +        (*old-prev-depth-increments*
  +          (cons *prev-depth-increment* *old-prev-depth-increments*))
  +        (*old-minus-next-depth-increments*
  +          (cons *minus-next-depth-increment* *old-minus-next-depth-increments*)))
       (let (*remaining-depth*
             *prev-depth-increment*
             *minus-next-depth-increment*
  
positive.code: (defun wrap-bind-args (form)
    (if (and (or (not *allow-repeated-goals*) (not *incomplete-inference*))
             (> *arity* 1))
        `(stack-let ((!args! (list . ,(head-locs *arity*))))
  	 ,form)
        form))
  
  
negative.code: 	       (remove-if-not #'(lambda (v)
                                    (variable-occurs-in-term-p v (car headpats)))
                                unbound)
  	       `(let ((!compound! ,(term-constructor (car headpats) vars)))
  		  (when (unify-argument-with-compound
  			  ,(car headlocs) !compound! :trail-is-nil
                            ,trail-is-nil :unsafe ,*unsafe-unification*)
  