anchor.diff:  
   (defun output-functions (program stream)
     (loop for name in (program-names program)
  -     unless (member name '(main intr))
  -     do (destructuring-bind (args body body1 insts) (program-by-name program name)
  +     when (and (not (member name '(main intr)))
  +               (program-function-alive-p program name))
  +     do (destructuring-bind (args body body1 insts)
  +            (program-by-name program name)
             (declare (ignore args body body1))
             (princ insts stream))))
   
  
positive.code: 
  (defun immediates-environment-lookup (var env)
    (cdr (assoc var env)))
  
  (defun alive-variable-p (var expr)
    (and (member var (flatten-list expr))
         t))
  
  (defun immediates (env inst)
    (cond
  
negative.code:      (immediates (empty-immediates-environment)
        (virtual
         (closure
          (elim
           (inlined fundefs
            (flatten
             (beta (empty-beta-environment)
              (alpha2 (empty-alpha2-environment)
               (alpha1 (empty-alpha1-environment)
                (k-normal (empty-k-normal-environment)
                 (expand form)))))))))))))))
  
  (defun expand-pic (form)
    (expand form))
  