anchor.diff:  (defun wrap-bind-args (form)
     (if (and (or (not *allow-repeated-goals*) (not *incomplete-inference*))
              (> *arity* 1))
  -      `(stack-let ((!args! (list . ,(head-locs *arity*))))
  +      `(let ((!args! (list . ,(head-locs *arity*))))
   	 ,form)
         form))
   
  
positive.code: 
  (eval-when (:compile-toplevel :load-toplevel :execute)
    (setq *print-radix* nil))
  
  (eval-when (:compile-toplevel :load-toplevel :execute)
    (defmacro stack-let (bindings &body body)
      ;; stack-let on the 3600 is like let except variable values are
      ;; consed on the stack, not in the heap thereby diminishing
      ;; allocation/deallocation costs
      `(let ,bindings . ,body)))
  
  (defconstant +float-internal-time-units-per-second+
    (float internal-time-units-per-second))
  
negative.code: 		  (funcall !continuation! !level!)
  		  (undo-bindings)))
          ;; (new-variable '_)
  	(1 (let ((struct (list functor
                                 (new-variable 'z1 !level!))))	
  	     (progn (bind-variable-to-term term struct :trail)
  		    (funcall !continuation! !level!)
  		    (undo-bindings))))
  	(2 (let ((struct (list functor
                                 (new-variable 'z1 !level!)
                                 (new-variable 'z2 !level!))))
  	     (progn (bind-variable-to-term term struct :trail)
  		    (funcall !continuation! !level!)
  		    (undo-bindings))))
  	(3 (let ((struct (list functor
                                 (new-variable 'z1 !level!)
                                 (new-variable 'z2 !level!)
                                 (new-variable 'z3 !level!))))
  	     (progn (bind-variable-to-term term struct :trail)
  		    (funcall !continuation! !level!)
  		    (undo-bindings))))
  	(4 (let ((struct (list functor
                                 (new-variable 'z1 !level!)
                                 (new-variable 'z2 !level!)
                                 (new-variable 'z3 !level!)
                                 (new-variable 'z4 !level!))))
  	     (progn (bind-variable-to-term term struct :trail)
  		    (funcall !continuation! !level!)
  		    (undo-bindings))))
  	(5 (let ((struct (list functor
                                 (new-variable 'z1 !level!)
                                 (new-variable 'z2 !level!)
                                 (new-variable 'z3 !level!)
                                 (new-variable 'z4 !level!)
                                 (new-variable 'z5 !level!))))
  	     (progn (bind-variable-to-term term struct :trail)
  		    (funcall !continuation! !level!)
  		    (undo-bindings))))
  