anchor.diff:       (sole? (funinfo-free-vars fi))
        (not (funinfo-scoped-vars (funinfo-parent fi)))
        (!= (car (funinfo-free-vars fi))
  -       (optimizer-message "; Removing array allocation for sole scoped ~A in ~A.~%"
  +       (optimizer-message "Removing array allocation for sole scoped ~A in ~A.~%"
                             ! (human-readable-funinfo-names fi))
          (= (funinfo-free-vars fi)    nil
             (funinfo-scope-arg fi)    !
  
positive.code:        (with-lambda-funinfo x.
           (correct-funinfo)
           (remove-unused-vars (lambda-body x.))))
  ;         (warn-unused-arguments *funinfo*)
      (remove-unused-vars .x)))
  
  (fn optimize-funinfos (x)
  
negative.code:      {(= (funinfo-scope-arg fi) nil)
        (pop (funinfo-args fi))
        (pop (funinfo-argdef fi))
        (optimizer-message "Made ~A a regular function.~%" (human-readable-funinfo-names fi))}))
  
  (fn remove-scoped-vars (fi)
    (& (sole? (funinfo-scoped-vars fi))
       (not (funinfo-place? fi (car (funinfo-scoped-vars fi))))
       {(optimizer-message "Unscoping ~A in ~A.~%"
                           (!= (funinfo-scoped-vars fi)
                             (? .! ! !.))
                           (human-readable-funinfo-names fi))
  