anchor.diff:  (defun interp-toplevel (x &key timeout)
     (unless (smackprop-p t 'global-val)
       (init-smack-interp))
  +  (set-internal-var 'call-depth 0)
     (trivial-timeout:with-timeout (timeout)
       (let ((env (extend-env '(-) (list x) nil)))
         (let ((vals (multiple-value-list (interp x env nil))))
  
positive.code:   ;; define macros
    (initialize-system-macros)
    (initialize-system-defsetfs)
    (initialize-global-vars))
  
  (defun initialize-global-vars ()
    (set-global-var '*** nil)
  
negative.code:   
  
  (defun apply-function (fn args env fenv)
    (let ((func (cond ((symbolp fn)
                       (get-func fn fenv))
                      ((and (consp fn) (eq (first fn) 'lambda))
                       (interp fn env fenv))
                      (t (error "Illegal function call: (~a ...)" fn))))
          (depth (get-internal-var 'call-depth))
          (max-depth (get-internal-var 'max-call-depth)))
      (when (>= depth max-depth)
        (error "Stack Overflow in Call to Function: (~a ...)" fn))
      (set-internal-var 'call-depth (1+ depth))
      (unwind-protect 
           (apply func args)
        (set-internal-var 'call-depth depth))))
  
  ;; returns a list of primary return values
  (defun interp-list (exps env fenv)
  