anchor.diff:  (defmethod print-object ((channel channel) stream)
     (print-unreadable-object (channel stream :type T)
       (format stream "~s ~s" :identifier (identifier channel))))
  +
  +(defmethod description ((source source))
  +  "")
  
positive.code: (defgeneric payload (event))
  
  ;; Registration
  (define-storage source)
  
  (defun list-sources ()
    (sort (loop for src being the hash-values of *source* collect src) #'string<
          :key #'identifier))
  
  (defmethod open-source :around (type identifier &key)
    (let ((source (call-next-method)))
  
negative.code: (defclass channel ()
    ())
  
  (defgeneric description (source))
  (defgeneric source-type (source))
  (defgeneric open-source (type identifier &key &allow-other-keys))
  (defgeneric close-source (source))
  