anchor.diff:  (defvar *process* nil)
   (defparameter *impl-name* nil)
   
  -(define-command lisp () ()
  +(define-command slime () ()
     (setf *process*
           (sb-ext:run-program "ros"
                               `(,@(if *impl-name* `("-L" ,*impl-name*))
  
positive.code:                             :wait nil
                              :search t))
    (sleep 1)
    (lisp-connect "localhost" *default-port*)
    (add-hook *exit-editor-hook*
              (lambda ()
                (lisp-quit))))
  
  (define-command lisp-quit () ()
    (when (and *process* (sb-ext:process-alive-p *process*))
      (sb-ext:process-kill *process* 9)
      (setf *connection* nil)))
  
  (define-command lisp-restart () ()
    (lisp-quit)
    (sleep 1)
    (lisp))
  
negative.code:                             (sleep 0.1))))))
                    :name "lisp-wait-message"))
  
  (define-command slime-connect (hostname port &optional (start-repl t))
      ((list (prompt-for-string "Hostname: " "localhost")
             (parse-integer (prompt-for-string "Port: " (princ-to-string *default-port*)))
             t))
  