anchor.diff:                         (list a b c))))))
     (clog (%disassemble f))
     (f 3 4))
  -
  -
  -
  -;; (macroexpand-all '(destructuring-bind (names vals specials len
  -;;                                        &aux newargs (i 0)) (get-bindings bindings)
  -;;                    (%seq (%prim-apply '%seq (mapcar (lambda (name x)
  -;;                                                       (prog1
  -;;                                                           (%seq (comp x env t t)
  -;;                                                                 (gen (if newargs "FRV2" "FRV1"))
  -;;                                                                 (when (%specialp name) (gen "BIND" name i)))
  -;;                                                         (%incf i)
  -;;                                                         (let ((cell (cons name nil)))
  -;;                                                           (if newargs
  -;;                                                               (rplacd newargs cell)
  -;;                                                               (set! env (cons cell env)))
  -;;                                                           (set! newargs cell))))
  -;;                                                     names vals))
  -;;                     (comp-seq body env val? true)
  -;;                     (gen "UNFR" 1 (length specials))
  -;;                     (if more? nil (gen "RET")))))
  -
  -
  -;; (mapcar (lambda (a b)
  -;;            (cons a b))
  -;;   '(1 2 3 4 5)
  -;;   '(a b c d e))
  
positive.code: 
       (comp-let* (bindings body env val? more?)
         (if bindings
             (destructuring-bind (names vals specials len
                                        &aux newargs (i 0)) (get-bindings bindings)
               (%seq (%prim-apply '%seq (mapcar (lambda (name x)
                                                  (prog1
                                                      (%seq (comp x env t t)
                                                            (gen (if newargs "FRV2" "FRV1"))
                                                            (when (%specialp name) (gen "BIND" name i)))
                                                    (%incf i)
                                                    (let ((cell (cons name nil)))
                                                      (if newargs
                                                          (rplacd newargs cell)
                                                          (set! env (cons cell env)))
                                                      (set! newargs cell))))
                                                names vals))
                     (comp-seq body env val? true)
                     (gen "UNFR" 1 (length specials))
                     (if more? nil (gen "RET")))))))
  
    (defun compile _
      (destructuring-bind (exp &key environment) _
        (assert (and (consp exp)
                     (eq (car exp) 'lambda))
                "Expecting (LAMBDA (...) ...) in COMPILE")
        (%assemble-closure (comp exp environment t nil)))))
  
  ;;;
  
  (let ((f (compile '(lambda (a b)
                       (let* ((a (* a a))
  
negative.code:              (otherwise (read-symbol)))))
  
        read-token)))
  
  (labels
      ((assert (p msg)
  