anchor.diff:                                          :collect `(setf ,(first i) ,(second i)))))))))))
         (make-instance
          'tcompile-obj
  -       :code `(let ,(when let-forms (list let-forms))
  +       :code `(let ,(when let-forms (remove-duplicates let-forms :test #'equal)) 
  +                ;;{TODO} let form name clash
                   ,(t-chain-expand counter-sym chain-forms))
          :run-test `(< ,counter-sym ,(length forms))
          :expired-test (when (not repeat) `(= ,counter-sym ,(length forms)))
  
positive.code: ;;   code, expired-test, local-vars, closed-vars
  ;; -----------------------------------------------------------------------------
  
  (defmacro tlambda (args &body body)
    ;;COPY CODE FROM TLAMBDA-DEBUG WHEN WORKING
    (apply #'tlambda-debug (cons args body)))
  ;; * tlambda has to have an expired-test as only it may release the expired signal
  ;;   otherwise we have to have a web of event handlers
  (defun tlambda-debug (args &rest body)
    (with-t-obj () (tprogn body)
      ;; (when (or expired-test local-vars run-test)
      ;;   (format t "unhanded~%---------~%local-vars:~s~%run-test:~s"
      ;;           local-vars (when (not (eq t run-test)) run-test)))
      (let ((lbody (if expired-test
                        `(if ,expired-test
                             (cfunc:signal-expired)
                             ,code)
                        code)))
        `(let (,@(loop :for (a b) :in closed-vars collect (list a b)))
           (lambda ,args
             (block tlambda-implicit-block
               (tagbody tlambda-start
                  (return-from tlambda-implicit-block
                    ,lbody))))))))
  
  ;;------------------------------------
  ;; Time compiler internals
  
negative.code:           nil
            `((,deadsym ,deadline t)))))
  
  ;;{TODO} gensym the progress var? hmmm no then cant be used in user code.
  ;;
  (def-time-condition before (deadline &key progress) t
    (unless (symbolp progress) (error "'progress' in 'each' must be a symbol"))
    (let* ((deadsym (gensym "deadline"))
  