anchor.diff:    (:method ((process cons) (kell kell))
       (add-process (eval process) kell))
     (:method ((process restriction) (kell kell))
  -    (let ((global-name (gensym (format nil "~a" (name process)))))
  +    (let ((global-name (gensym (format nil "~a-" (name process)))))
         (add-process (apply-restriction (name process) global-name (process process))
                      kell)))
     (:method ((process process) (kell kell))
  
positive.code:       :name (duplicate-process (name process))
        :process (duplicate-process (process process))
        :continuation (duplicate-process (continuation process))))
    (:method ((process trigger))
      (make-instance 'trigger
        :pattern (duplicate-process (pattern process))
        :process (duplicate-process (process process))))
    (:method ((process parallel-composition))
      (let ((pc (make-instance 'parallel-composition)))
        (psetf (messages pc) (mapcar #'duplicate-process (messages process))
               (kells pc) (mapcar #'duplicate-process (kells process))
               (triggers pc) (mapcar #'duplicate-process (triggers process))
               (process-variables pc) (mapcar #'duplicate-process
                                              (process-variables process))
               (primitives pc) (mapcar #'duplicate-process (primitives process)))
        pc))
    (:method ((process restriction))
      (make-instance 'restriction
        :name (duplicate-process (name process))
  
negative.code: (defgeneric duplicate-process (process)
    (:method (process)
      process)
    (:method ((process cons))
      (mapcar #'duplicate-process process))
    (:method ((process message))
      (make-instance 'message
        :name (duplicate-process (name process))
  