anchor.diff:  
   (defun stack-list-new-variables (variables form)
     (cond ((null variables) form)
  -	(t (list 'stack-let
  +	(t (list 'let
   		 (mapcar
                     #'(lambda (v)
                         (list v `(new-variable ',v !level!) ))
  
positive.code:                                             (variable-occurs-in-term-p
                                               v (first (clause-args clause))))
                                          variables)
  			 `(stack-let
                                ((!compound! ,(term-constructor
                                               (first (clause-args clause))
                                               variables)))
  
negative.code: (defun wrap-bind-args (form)
    (if (and (or (not *allow-repeated-goals*) (not *incomplete-inference*))
             (> *arity* 1))
        `(let ((!args! (list . ,(head-locs *arity*))))
  	 ,form)
        form))
  
  