Scott Turner srt19170@gmail.com writes:
I'm currently using SLIME & SBCL (SBCL 1.0.50.24.mswinmt.876-cad5ed2 -- Kovalenko's Windows port). When I hit C-c C-c to interrupt, my Lisp dies and I have to kill Slime and restart. Am I doing something wrong, or is interrupt just not supported on SBCL?
Ensure you use the :spawn communication style -- e.g. by loading swank and setting swank:*communication-style* to :spawn in your .sbclrc. (The real culprit is (slime-use-sigint-for-interrupt) in SLIME).
Interrupts in general are supported; when swank is using multiple threads (with :spawn style), C-c C-c from Emacs will be handled by the control thread, which will interrupt the REPL thread.
Control-C handler for raw REPL is not installed: though it's possible, I have some semantic difficulties about what it should do. There was once a discussion here -- you may look it up if interested.
As of what stands for "SIGINT" in Emacs for Windows, I didn't look into it, but it's either a GenerateConsoleCtrlEvent (thing like raw Control-C), or maybe even something more harsh like TerminateProcess. Thus you really need a :SPAWN style for swank to make interrupts work.