[slime-devel] cmucl multithread problem
William Conrad Halliburton
will at licentiae.com
Thu Dec 11 07:06:52 UTC 2003
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))))
More information about the slime-devel
mailing list