anchor.diff:                               (with-lock-held (*dummy-wait-lock*)
                                  (condition-wait *new-events*
                                                  *dummy-wait-lock*))))
  -             (error (c) (printk "ERROR: ~a~%" c)))))
  +             (error (c) (handle-error c)))))
   
   (defun start-kilns (count)
     (loop for i from 1 to count
       collecting (make-thread #'run-kiln :name (format nil "kiln ~d" i))))
   
   (defgeneric apply-restriction (local-name global-name process)
  +  (:documentation "DESTRUCTIVE. Returns the process with all restrictions expanded to
  +                   have unique names.")
     (:method (local-name global-name process)
       (declare (ignore local-name global-name))
       process)
     (:method (local-name global-name (process message))
       (if (eql (name process) local-name)
         (setf (name process) global-name))
  -    (apply-restriction local-name global-name (process process))
  -    (apply-restriction local-name global-name (continuation process))
  +    (setf (process process)
  +          (apply-restriction local-name global-name (process process))
  +          (continuation process)
  +          (apply-restriction local-name global-name (continuation process)))
       process)
     (:method (local-name global-name (process kell))
       (if (eql (name process) local-name)
         (setf (name process) global-name))
  -    (apply-restriction local-name global-name (process process))
  -    (apply-restriction local-name global-name (continuation process))
  +    (setf (process process)
  +          (apply-restriction local-name global-name (process process))
  +          (continuation process)
  +          (apply-restriction local-name global-name (continuation process)))
       process)
     (:method (local-name global-name (process parallel-composition))
  -    (mapc (lambda (message)
  -            (apply-restriction local-name global-name message))
  -          (messages process))
  -    (mapc (lambda (kell)
  -            (apply-restriction local-name global-name kell))
  -          (kells process))
  -    (mapc (lambda (trigger)
  -            (apply-restriction local-name global-name trigger))
  -          (triggers process))
  -    (mapc (lambda (primitive)
  -            (apply-restriction local-name global-name primitive))
  -          (primitives process))
  -    process)
  +    (apply #'parallel-composition
  +           (map-parallel-composition (lambda (proc)
  +                                       (apply-restriction local-name global-name proc))
  +                                     process)))
     (:method (local-name global-name (process pattern))
  -    (mapc (lambda (message)
  -            (apply-restriction local-name global-name message))
  -          (local-message-pattern process))
  -    (mapc (lambda (message)
  -            (apply-restriction local-name global-name message))
  -          (down-message-pattern process))
  -    (mapc (lambda (message)
  -            (apply-restriction local-name global-name message))
  -          (up-message-pattern process))
  -    (mapc (lambda (message)
  -            (apply-restriction local-name global-name message))
  -          (kell-message-pattern process))
  +    (setf (local-message-pattern process)
  +          (mapcar (lambda (message)
  +                    (apply-restriction local-name global-name message))
  +                  (local-message-pattern process))
  +          (down-message-pattern process)
  +          (mapcar (lambda (message)
  +                    (apply-restriction local-name global-name message))
  +                  (down-message-pattern process))
  +          (up-message-pattern process)
  +          (mapcar (lambda (message)
  +                    (apply-restriction local-name global-name message))
  +                  (up-message-pattern process))
  +          (kell-message-pattern process)
  +          (mapcar (lambda (message)
  +                    (apply-restriction local-name global-name message))
  +                  (kell-message-pattern process)))
       process)
     (:method (local-name global-name (process restriction))
       (apply-restriction local-name global-name
  
positive.code:                           ;; (printk "~a~%" process)
                            (add-process process *top-kell*))
              (end-of-file () (return))
              (error (c) (printk "ERROR: ~a~%" c))))
        (mapc #'destroy-thread kilns)
        (clear-events))))
  
  
negative.code:                                             global-name
                                              (process process)))))
    (:method (local-name global-name (process trigger))
      (setf (pattern process)
            (apply-restriction local-name global-name (pattern process))
            (process process)
            (apply-restriction local-name global-name (process process)))
      process))
  
  (defgeneric activate-process (process kell)
  