anchor.diff:  (in-package :verbose)
   
   (defvar *global-controller* NIL)
  -(defvar *shared-instances* (make-hash-table))
  -
  -(setf (gethash 'standard-output *shared-instances*) *standard-output*)
  -(setf (gethash 'error-output *shared-instances*) *error-output*)
   
   (defclass controller (pipeline)
     ((thread :accessor controller-thread)
  +   (shares :initform (make-hash-table) :accessor shares)
      (message-condition :initform (make-condition-variable :name "MESSAGE-CONDITION") :reader message-condition)
      (message-pipe :initform (make-array '(10) :adjustable T :fill-pointer 0) :accessor message-pipe)
      (message-lock :initform (make-lock "MESSAGE-LOCK") :reader message-lock))
  
positive.code:     (loop do
        (with-simple-restart (skip "Skip processing the message.")
          (let ((queue (message-pipe controller))
                (*standard-output* (gethash 'standard-output *shared-instances*))
                (*error-output* (gethash 'error-output *shared-instances*)))
            (setf (message-pipe controller) (make-array '(10) :adjustable T :fill-pointer 0))
            (release-lock lock)
            (loop for message across queue
  
negative.code:   (setf (controller-thread controller)
          (make-thread #'controller-loop
                       :name "CONTROLLER MESSAGE LOOP"
                       :initial-bindings `((*global-controller* . ,controller))))
    (setf (gethash 'standard-output (shares controller)) *standard-output*)
    (setf (gethash 'error-output (shares controller)) *error-output*))
  
  (defun controller-loop ()
    (let* ((controller *global-controller*)
  