anchor.diff:                           #+(and swank (not sbcl)) (swank-backend:arglist handler-function)
                            #-(or sbcl swank) (second (nth-value 2 (function-lambda-expression handler-function))))))
     (setf (command-handler identifier)
  -        (make-instance 'command-handler
  +        (make-instance class
                          :identifier identifier :pattern cmd-pattern :arguments arguments
                          :handler-function handler-function :priority priority :docstring docstring))
     identifier)
  
positive.code:           (identifier handler) (pattern handler) (docstring handler) (subcommands handler)))
  
  (defmacro define-group (name &key documentation pattern subcommands)
    (unless pattern
      (setf pattern (format NIL "^~a(.*)" (escape-regex-symbols name))))
    `(progn
       (set-command-function ',name ,pattern #'(lambda (event &rest args)
                                                 (if args
                                                     (respond event (apropos-command-handler (message event)))
                                                     (respond event (apropos-command-handler (command-handler ',name)))))
                             :docstring ,documentation :priority :AFTER)
       ,(when subcommands
          `(setf (subcommands (command-handler ',name)) ,subcommands))))
  
  (defmacro define-command (name (&rest args) (&key authorization documentation (eventvar 'event) module-name (modulevar 'module) pattern (priority :DEFAULT)) &body body)
    (unless pattern
      (setf pattern (if (listp name)
                        (format NIL "^~{~a~^ ~}(.*)" (mapcar #'(lambda (a) (escape-regex-symbols (string a))) name))
  
negative.code:     (setf module-name (get-current-module-name)))
    (let ((funcsym (gensym "FUNCTION")))
      (flet ((mksymb (list)
               (let ((name (format NIL "~{~a~^ ~}" list)))
                 (or (find-symbol name) (intern name)))))
        `(let ((,funcsym #'(lambda (,eventvar ,@args)
                              ,@(when authorization
  