anchor.diff:       (c-expired (c) (progn c t))))
   
   ;;--------------------------------------------------------------------
  -
  
positive.code: 
  (in-package #:temporal-functions)
  
  ;; {TODO} Add paramter for time sources
  ;; {TODO} add once, between, each, once, whilst
  ;; {TODO} if user fires expired inside body of clause the effect should be 
  ;;        local
  
  (defclass result ()
  
negative.code:            (labels (,@start-tests
                      ,@expire-tests
                      ,@funcs)
               (declare (ignorable ,@(mapcar (lambda (_) (list 'function (first _)))
                                             start-tests)
                                   ,@(mapcar (lambda (_) (list 'function (first _)))
                                             expire-tests)
                                   ,@(mapcar (lambda (_) (list 'function (first _)))
                                             funcs)))
               (prog1
                   ,(improve-readability `(progn ,@(mapcar #'body compiled)))
  