anchor.diff:             :short #\r
              :long "remote"
              :description "Send the --eval and --load arguments to the running instance of Next.
  +Implies --quit.
   The remote instance must be listening on a socket which you can specify with --socket.")
       (:name :data-profile
              :short #\d
  
positive.code:            :long "socket"
             :arg-parser #'identity
             :description "Set path to socket.
  Unless evaluating remotely (see --remote), Next starts in single-instance mode a socket is set.")
      (:name :no-socket
             :short #\S
             :long "no-socket"
  
negative.code:          (file (with-open-file (f file :element-type :default)
                   (run-script f))))))
  
      ((and (or (getf options :load)
                (getf options :eval))
            (or (getf options :quit)
                (getf options :remote)))
       (start-load-or-eval))
  
      (t
       (start-browser free-args)))
  
    (unless *keep-alive* (uiop:quit)))
  
  (defun load-or-eval (&key remote)
    (loop for (opt value . _) on *options*
          do (match opt
               (:load (let ((value (uiop:truename* value)))
                        ;; Absolute path is necessary since remote process may have
                        ;; a different working directory.
                        (if remote
                            (remote-eval (format nil "~s" `(load-lisp ,value)))
                            (load-lisp value))))
               (:eval (if remote
                          (remote-eval value)
                          (eval-expr value))))))
  
  (defun start-load-or-eval ()
    "Evaluate Lisp.
  