anchor.diff:               (not (null *connection*)))
       (handler-bind ((disconnected (lambda (c)
                                      (declare (ignore c))
  -                                   (setq *connection* nil))))
  +                                   (remove-connection *connection*))))
         (loop :while (swank-protocol:message-waiting-p *connection*)
               :do (dispatch-message (swank-protocol:read-message *connection*))))))
   
  
positive.code:   (let ((process (swank-protocol:connection-process *connection*)))
      (when (and process (sb-ext:process-alive-p process))
        (sb-ext:process-kill process 9)
        (setf *connection* nil))))
  
  (define-command slime-restart () ()
    (slime-quit)
  
negative.code: 
  (defun connected-p ()
    (not (null *connection*)))
  
  (defun add-connection (conn)
    (push conn *connection-list*)
    (setf *connection* conn))
  
  (defun remove-connection (conn)
    (setf *connection-list* (delete conn *connection-list*))
    (setf *connection* (car *connection-list*))
    *connection*)
  
  (defun self-connect ()
    (prog (port)
  