anchor.diff:                      (find-root-pathname (buffer-directory buffer)
                                           (spec-root-uri-patterns spec)))))
       (handler-bind ((error (lambda (c)
  -                            (declare (ignore c))
  +                            (log:info c (princ-to-string c))
                               (kill-server-process spec))))
         (let ((new-client (establish-connection spec)))
           (cond ((null new-client)
  
positive.code:         (apply command args)
          command)))
  
  (defmethod run-server-using-mode ((mode (eql :tcp)) spec)
    (flet ((output-callback (string)
             (let* ((buffer (make-server-process-buffer spec))
  
negative.code:                         :disposable (lambda () (lem-process:delete-process process))))))
  
  (defmethod run-server-using-mode ((mode (eql :stdio)) spec)
    (let ((command (get-spec-command spec)))
      (check-exist-program command spec)
      (let ((process (async-process:create-process command :nonblock nil)))
        (make-server-info :process process
                          :disposable (lambda () (async-process:delete-process process))))))
  
  (defun run-server (spec)
    (run-server-using-mode (spec-mode spec) spec))
  