[slime-devel] Re: swank loading broken?

Mark Harig idirectscm at aim.com
Tue Feb 19 18:44:31 UTC 2008


Ralf Mattes wrote:
> As my other post reports - it's a bug in slime.el (swank-loader:load-swank)
> never gets called and hence sank.lisp never get's loaded (verified by
> tracing load and compile-file). This all seems to be the result of the
> recent changes by Helmut and Marco.
>
>  Thanks for your help - and I shure would like to know why it's working on
>  your box ... :-)
>
>   
In the code below, from swank-loader.lisp, it can be seen that 'init'
(which is called in slime.el) calls 'load-swank', or rather, calls it if
the (when ...) condition is satisfied.  Could it be that (find-package 
:swank)
is failing on your system for some reason?  Or, could it be that 
'load-swank'
is called  (defined earlier in the listing) and it fails to compile the 
swank-src-files,
or that *fasl-directory* is inaccessible on your system for some reason?

swank-loader.lisp (rev. 1.80):
-----------------------------
   208  (defun load-swank (&key (src-dir *source-directory*)
   209                     (fasl-dir *fasl-directory*))
   210    (compile-files (swank-src-files src-dir) fasl-dir t))
   211 
   212  (defun compile-contribs (&key (src-dir (contrib-dir 
*source-directory*))
   213                           (fasl-dir (contrib-dir *fasl-directory*)))
   214    (compile-files (src-files *contribs* src-dir) fasl-dir nil))
   215 
   216  (defun setup ()
   217    (flet ((q (s) (read-from-string s)))
   218      (load-site-init-file *source-directory*)
   219      (load-user-init-file)
   220      (eval `(pushnew 'compile-contribs ,(q 
"swank::*after-init-hook*")))
   221      (funcall (q "swank::setup")
   222               (slime-version-string)
   223               (list (contrib-dir *fasl-directory*)   
   224                     (contrib-dir *source-directory*)))))
   225 
   226  (defun init (&key delete reload)
   227    (when (and delete (find-package :swank))
   228      (mapc #'delete-package '(:swank :swank-io-package 
:swank-backend)))
   229    (when (or (not (find-package :swank)) reload)
   230      (load-swank))
   231    (setup))




More information about the slime-devel mailing list