I've been using SLIME with Allegro 6.2 and 7.0 under Windows for some time. My problem was only a startup delay launching the GUI application, reading the swank code and starting the server. My lisp init file sets the port # to connect so calling slime-connect works fine if I just delay the connect until the server is ready. Your mileage may vary (different systems take different startup time). I always use F5 instead of M-x slime to start up the system.
From slime.el: (global-set-key [(f5)] '(lambda () (interactive) (start-process "acl" nil "c:/Progra~1/acl70/clim.exe" "+B" "+M" "+cn" "-I" "clim.dxl") ;; "-d" "allegro-log.txt") (delete-other-windows) ;; Give time for loading to happen and server to start (sleep-for 5) (slime-connect "localhost" 4005) (slime-set-default-directory "c:/Work/think/trunk/")))
From slime.lisp: (load "c:/Work/Think/trunk/lisp/slime/swank-loader.lisp") (swank::create-swank-server 4005 :spawn #'swank::simple-announce-function t)
Ian
Luke Gorrie wrote:
Peter Seibel peter@gigamonkeys.com writes:
Not having a Windows box to play with, I haven't gotten around to trying SLIME on Windows. What's the reason it doesn't Just Work? Is it Allegro specific?
I don't have Windows either and have generally been happy that people have looked after themselves in this respect :-)
I think it's mostly simple. Here is what SLIME wants to do:
- Open a lisp in *inferior-lisp*
- Send Lisp forms directly to the REPL asking it to load/start Swank
- Poll a /tmp file until swank writes its port number there
- Read the port number and connect
but some Windows Lisps are GUI beasts and don't want to run under *inferior-lisp* so they won't work this way.
So instead one has to do something like Edi did:
- Start Lisp as a GUI program with an argument telling it to start Swank
- Loop doing `slime-connect' on a well-known-port until we manage to connect to the asynchronously-starting server.
and this could perhaps be rolled into SLIME proper as an alternative startup flow and tested/used on Unix.
This is probably not the full story though. There has been VBscript flying around and I haven't understood what it's upto.
-Luke
slime-devel site list slime-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/slime-devel