anchor.diff:     measurement."
     `(call-with-monitoring-region ',name (lambda () ,@body)))
   
  +(defun call-with-monitoring-region (name thunk)
  +  (let* ((*measurements* *measurements*)
  +         (start (make-monitoring-region-start name)))
  +    (store-measurement start *measurements*)
  +    (unwind-protect
  +         (let ((*context* (cons name *context*)))
  +           (funcall thunk))
  +      (let ((end (make-monitoring-region-end name start)))
  +        (setf (measurement-value start) end)
  +        (store-measurement end *measurements*)))))
  +
   (defmethod print-object ((monitoring-region-start monitoring-region-start) stream)
     (print-unreadable-object (monitoring-region-start stream :type t)
       (format stream "~@{~S ~S~^ ~}"
  
positive.code:         (store-measurement measurement storage))))
    (values))
  
  (defgeneric store-measurement (measurement storage))
  
  (defmethod print-object ((measurement measurement) stream)
    (if *print-pretty*
  
negative.code:   "A measurement that is only emitted when leaving a monitoring region.
  Its value is the corresponding monitoring region start.")
  
  (defmacro with-monitoring-region ((name) &body body)
    "Execute BODY in a region monitoring NAME.  This entails the following things:
  
  