[slime-devel] Re: swank loading broken?
Madhu
enometh at meer.net
Thu Feb 21 02:27:19 UTC 2008
* Helmut Eller <m27ih0aa95.fsf at common-lisp.net>
Wrote on Tue, 19 Feb 2008 22:48:06 +0100:
|
|> * (swank-loader:init)
|
| The latest version of swank-loader:init doesn't reload swank if the
| package already exists. You can call it with
|
| (swank-loader:init :reload t)
|
| to override that. slime.el invokes swank-loader:init without
| arguments.
[Have not tested it yet] but the new behaviour will not support the use
case I mentioned in my messages to Marco Baringer, because aiui
(swank-loader:init :reload t) will delete packages.
The wisdom from ages has been to separate loading from initialization
and to provide the mechanism to do both.[1]
I have not had a problem with reloading swank into a lisp image which
already have swank, and when I do reload swank into a lisp image which
has swank, I want the behaviour of DEFVAR and DEFPARAMETERs as
documented in the Common Lisp Specification to be observed.
Deleting package seems to solve some problem for some combination of
lisp + swank hacking/dumping swank to image that Marco is using, (again
I have not had these problems), but if it speaks of a problem, the
problem is not with original swank-loader, and trying to fix
swank-loader only introduces new problems.
Marco did not respond to my messages asking which variables were giving
the problems. However I can imagine he could have been dumping state
into the core which should not be dumped like live connections, which
would cause problems. In these cases a simple DEFVAR -> DEFPARAMETER
should be enough to fix the problem
Anyway, what is happening is instead of fixing any actual problems, new
problems are being introduced and mechanism being removed.
--
Madhu
[1] swank-loader originally did both, but _could_ be invoked by the user
to support all behaviours via:
(when (find-package "SWANK") ;; or not ...
(do-things-with "swank-loader.lisp"))
More information about the slime-devel
mailing list