anchor.diff:  ;;; Introduce storage boxes
   ;;;
   ;;; We need storage boxes for variables that get written to *and* get
  -;;; stashed into closures (read only variables can be stored directly
  -;;; in closures).  So we rewrite all set!s and refs for such variables
  -;;; to go via the storage boxes.
  +;;; stashed into closures (read-only variables can be stored directly
  +;;; in closures; written variables that don't put in closures can just
  +;;; live on the stack).  So we rewrite all set!s and refs for such
  +;;; variables to go via the storage boxes.
   ;;;
   ;;; For variables introduced by begin, we also need to allocate the
   ;;; storage boxes, but these always get initialized to unspecified, so
  
positive.code: 
  (define-trivial-walker simplify ())
  
  ;;; Adjust lambdas so that they only take one body form.
  
  (define-simplify (lambda attrs . body)
    (simplify-recurse form)
    (rplacd (cdr form) (list (wrap-lambda-body attrs body))))
  
  (define-simplify (char-code attrs ch)
    (overwrite-form form ch)
  
negative.code:   (simplify-recurse form))
  
  (define-simplify (character? attrs ch)
    (rplaca form 'number?)
    (simplify-recurse form))
  
  