[slime-devel] Unloading SLIME

Hi, I'd like to be able to switch between several installations of SLIME, and handle the possibility that each installation is a different version of SLIME. I'm writing some emacs helper functions to support this, and here's my attempt at unloading SLIME before I try to load the other version: (defun unload-slime () (slime-repl-sayoonara) (dolist (feature features) (when (string-match "slime" (format "%s" feature)) (unload-feature feature t)))) I'm wondering if anyone can let me know if this looks OK, or if they have a better idea? Many thanks! Cheers, David

thus spoke David Neu <david@davidneu.com>:
I'm writing some emacs helper functions to support this, and here's my attempt at unloading SLIME before I try to load the other version:
(defun unload-slime () (slime-repl-sayoonara) (dolist (feature features) (when (string-match "slime" (format "%s" feature)) (unload-feature feature t))))
I'm wondering if anyone can let me know if this looks OK, or if they have a better idea?
Go through the symbol table and clear symbol cells of everything that begins with "slime-", then unintern the symbols.

Thanks! 2009/8/13 Stanisław Halik <sthalik@test123.ltd.pl>:
thus spoke David Neu <david@davidneu.com>:
I'm writing some emacs helper functions to support this, and here's my attempt at unloading SLIME before I try to load the other version:
(defun unload-slime () (slime-repl-sayoonara) (dolist (feature features) (when (string-match "slime" (format "%s" feature)) (unload-feature feature t))))
I'm wondering if anyone can let me know if this looks OK, or if they have a better idea?
Go through the symbol table and clear symbol cells of everything that begins with "slime-", then unintern the symbols.
_______________________________________________ slime-devel site list slime-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/slime-devel

thus spoke David Neu <david@davidneu.com>:
Thanks!
There are many more places that might contain SLIME-related stuff, like `after-load-alist'. Might be of use to write a function that walks the symbol table, then deeply walks all possible data structure types searching for "slime-" symbols in symbols' function and value cells. Not reliable enough to run automatically, but it might help you determine which non-slime symbols need having their values modified.
participants (2)
-
David Neu
-
Stanisław Halik