anchor.diff:                 (- (get-internal-real-time)
                     (timer-last-time timer)))
           (push timer update-timers)
  -        (if (timer-repeat-p timer)
  -            (setf (timer-last-time timer)
  -                  (get-internal-real-time))
  -            (push timer promised-timers))))
  +        (cond ((timer-repeat-p timer)
  +               (setf (timer-last-time timer)
  +                     (get-internal-real-time)))
  +              (t
  +               (setf (timer-alive-p timer) nil)
  +               (push timer promised-timers)))))
       (setq *timer-list* (set-difference *timer-list* promised-timers))
       (dolist (timer update-timers)
         (handler-case
  
positive.code: 
  (defun exist-running-timer-p ()
    (not (null *timer-list*)))
  
negative.code:    (handle-function
      :initarg :handle-function
      :reader timer-handle-function
      :type (or null function))
     (alive-p
      :initarg :alive-p
      :accessor timer-alive-p
      :type boolean)))
  
  (defun timer-p (x)
    (typep x 'timer))
  