anchor.diff:             (written false))
         (cond ((= state 2) 
                (set! written true))
  -            ((= state 3)
  -             (set! written true)
  +            ((early-access-state? state)
  +             (set! written (if (= 3 state) 'early-read true))
                (rplacd (cdr form) (cons (list 'define varrec (quoted-unspecified))
                                         (cddr form))))
  -            ((= state 4)
  +            ((= state 5)
                (error "bad variable ~S" (car varrec))))
         (varrec-attr-set! varrec 'written written))))
   
  
positive.code:                                     (cdddr varrec))))
            (varrec-attr-set! varrec 'closure-stack
                              (acons depth local-varrec closure-stack))
            (varrec-attr-set! varrec 'boxed (varrec-written? varrec))
            (rplaca closure-cell (cons local-varrec (car closure-cell)))
            local-varrec))))
  
  
negative.code:     ;; closure.  instead we use a special self-closure attr.
      (let* ((self-varrec (attr-ref attrs 'self)))
        (form-attr-set! form 'self-closure
                        (if (and self-varrec
                                 (not (varrec-quasi-written? self-varrec)))
                            (resolve-closure-var self-varrec (1+ depth)
                                                 self-closure-cell)
                            false)))
  