[slime-devel] Problem with Clisp on WindowsNT

Helmut Eller e9626484 at stud3.tuwien.ac.at
Sun Oct 10 21:47:21 UTC 2004


[This message was apparently lost, because HD was full.]


Nico <nswart at zoominternet.net> writes:

> I use CLisp with Slime on Windows NT. If I work in Slime and save an
> image, the reload of the saved image
> cause a stack overflow problem. The exact message is : *** - Program
> stack overflow. RESET

The problem is that we keep some network streams in global variables
and they become invalid after reloading.  There is also some synonym
stream magic, but I don't understand that.

> My guess is that the problem is caused by the reloading of Slime that
> interacts with the Slime that is already
> in the saved image. The saved image can be loaded without a problem if
> Slime is not used. What is the workaround ?
> I have tried to disable the loading of Slime since the Lisp part of
> Slime should be part of the saved image, but
> had no success. Any suggestions would be appreciated.

On possible solution is as follows:
To save the image
 
 1) M-x slime-disconnect
 2) switch to the *inferior-lisp* buffer the remove the network
    streams like so:

     [4]> (swank::revert-global-io-redirection)
     nil
     [5]> (ext:saveinitmem "/tmp/swank.mem")

To load the image:

 1) Don't use M-x slime directly to avoid loading SWANK twice.
    Instead use something like:

      M-x run-lisp RET  clisp -M /tmp/swank.mem
  
 2) Start the swank server manually in the *inferior-lisp* buffer
 
      [1]> (swank:create-server)
      ;; Swank started at port: 4005.

 3) Connect manually to the server:

      M-x slime-connect 

We should probably improve our shutdown logic a bit and make it easier
start a Lisp with a preloaded SWANK.

Helmut.




More information about the slime-devel mailing list