anchor.diff:  
   (define-walker assign-indices-aux (index) ignore-domain)
   
  -(define-assign-indices-aux (let varrecs . body)
  +(define-assign-indices-aux (let varrecs body)
     (assign-indices-aux-recurse form
                                 (assign-varrec-indices varrecs 'local index)))
   
  -(define-assign-indices-aux (lambda attrs . body)
  +(define-assign-indices-aux (lambda attrs body)
     (assign-varrec-indices (attr-ref attrs 'closure) 'closure 0)
     (assign-varrec-indices (form-attr form 'params) 'param 0)
     (assign-indices-aux-recurse form 0))
  
positive.code:   (rplaca (cdr form) (lassoc var frames))
    (resolve-variables-aux-recurse form frames))
  
  (define-resolve-variables-aux (let varrecs . body)
    (resolve-variables-aux-recurse form (cons varrecs frames)))
  
  (define-resolve-variables-aux (lambda attrs . body)
    (resolve-variables-aux-recurse form (cons (attr-ref attrs 'params) frames)))
  
  (define (resolve-variables form)
  
negative.code:             (list 'make-box () (quoted-unspecified))
              (quoted-unspecified))))
  
  (define-introduce-boxes (let varrecs body)
    (introduce-boxes-recurse form)
    (let* ((written-varrecs (filterfor (varrec varrecs) 
                              (varrec-written? varrec))))
      (unless (null? written-varrecs)
        (rplaca (cddr form) (nconc (list 'begin ())
                                   (nmapfor (varrec written-varrecs)
                                     (initialize-var-form varrec))
                                   (list body))))))
  
  (define (init-boxed-param-form varrec temprec)
    (quasiquote (set! (unquote varrec) (make-box () (ref (unquote temprec))))))
  
  (define-introduce-boxes (lambda attrs body)
    (introduce-boxes-recurse form)
    (let* ((box-varrecs ())
           (box-init-forms ()))
      (nmapfor (varrec (attr-ref attrs 'params))
        (if (varrec-boxed? varrec)
            (let* ((temprec (list (gensym))))
              (set! box-varrecs (cons varrec box-varrecs))
              (set! box-init-forms (cons (init-boxed-param-form varrec temprec)
                                         box-init-forms))
              temprec)
            varrec))
      (unless (null? box-varrecs)
        (rplaca (cddr form)
                (quasiquote (let (unquote box-varrecs)
                                 (begin ()
                                   (unquote-splicing box-init-forms)
                                   (unquote body))))))))
  
  ;;; Calculate indices for variables
  
  