anchor.diff:                    :do (send client msg)))
   
             input-queue-thread
  -          (with-thread (*thread-name-input-queue*)
  +          (with-thread ("input queue handler")
               (loop :for msg := (queue-pop (input-queue client))
                     :while (connectedp client)
                     :do (sleep *input-queue-interval*)
  
positive.code: (defclass eval-bot () nil)
  
  ;;; Threads
  
  (defparameter *thread-name-eval*
    "eval-bot eval handler")
  (defparameter *thread-name-server-message*
    "eval-bot server message handler")
  (defparameter *thread-name-send-queue*
    "eval-bot send queue handler")
  (defparameter *thread-name-input-queue*
    "eval-bot input queue handler")
  
  (defmacro with-thread ((name &key timeout) &body body)
    (let ((main (gensym "MAIN-THREAD"))
  
negative.code:       (bt:destroy-thread send-queue-thread))
  
      (setf send-queue-thread
            (with-thread ("send queue handler")
              (loop :for msg := (queue-pop (send-queue client))
                    :while (connectedp client)
                    :do (sleep *send-queue-interval*)
  