Using cmucl 18e and a CVS from a couple of days ago. (mp::startup-idle-and-top-level-loops) from slime-repl hangs slime-repl but works when ran from inferior-lisp (slime-repl still works afterwards). Upgraded to latest CVS and now the inferior-lisp is taken up by the slime server, while before I was able to use both inferior-lisp and slime-repl.
Hacked a fix in slime.el but is nonportable. Started the mutithreading from slime and placed slime server into a thread.
(defun slime-maybe-start-lisp () "Start an inferior lisp unless one is already running." (unless (get-buffer-process (get-buffer "*inferior-lisp*")) (call-interactively 'inferior-lisp) (comint-proc-query (inferior-lisp-proc) "(mp::startup-idle-and-top-level-loops)") (comint-proc-query (inferior-lisp-proc) (format "(load %S)\n" (concat slime-path slime-backend)))))
(defun slime-start-swank-server () "Start a Swank server on the inferior lisp." (comint-proc-query (inferior-lisp-proc) (format "(mp::make-process (lambda () (swank:start-server %S)) :name "slime")\n" (slime-swank-port-file))))