anchor.diff:  log5-test> 
   
   ;; 0.86
  +#+(or)
   (progn 
     (when (probe-file "/tmp/bar.log")
       (delete-file "/tmp/bar.log"))
  -  (lift::measure 
  -   (lambda ()
  -     (with-open-file (s "/tmp/bar.log" :if-exists :supersede
  -			:if-does-not-exist :create :direction :output)
  -       (loop repeat 10000 do
  -	    (let ((file-length (ignore-errors (file-length s))))
  -	      (when file-length (file-position s (file-length s)))
  -	      (fresh-line s)
  -	      (princ (get-universal-time) s)
  -	      (princ #\Space s)
  -	      (princ "a message" s)
  -	      (terpri s)
  -	      (force-output s)))))))
  +  (let (s b)
  +    (lift::measure s b
  +      (with-open-file (s "/tmp/bar.log" :if-exists :supersede
  +			 :if-does-not-exist :create :direction :output)
  +	(loop repeat 10000 do
  +	     (let ((file-length (ignore-errors (file-length s))))
  +	       (when file-length (file-position s (file-length s)))
  +	       (fresh-line s)
  +	       (princ (get-universal-time) s)
  +	       (princ #\Space s)
  +	       (princ "a message" s)
  +	       (terpri s)
  +	       (force-output s)))))
  +    (values s b)))
   
   ;; 0.39
  +#+(or)
   (progn 
     (when (probe-file "/tmp/bar.log")
       (delete-file "/tmp/bar.log"))
  
positive.code: 	    (terpri s)
  	    (force-output s))))))
  
  (lift::measure 
   (lambda ()
    (loop repeat 1000000 do
  
negative.code: 		 (if (plusp (* (+ active ignoring) loggers loops))
  		     (/ seconds (* (+ active ignoring) loggers loops))
  		     (/ seconds (* (max loggers 1) loops)))))))
  
  (rpt 
   '(((1000 0 0.0d0 80 (0 0))) ((1000 10 0.001d0 80 (0 0)))
      ((1000 20 0.0d0 80 (0 0))) ((1000 0 0.0d0 80 (10 0)))
      ((1000 10 7.501d0 876356776 (10 0)))
      ((1000 20 14.77d0 1752732464 (10 0))) ((1000 0 0.0d0 96 (0 10)))
      ((1000 10 0.009d0 96 (0 10))) ((1000 20 0.016d0 96 (0 10)))))
  
  (rpt
  ;; with senders, still no trouble
  