是否有在 Common Lisp 中捕获键盘中断的交叉实现(至少 SBCL、CCL、Lispworks 和 CLISP)、跨平台(Linux/Windows/OS X)方式?或者更具体地说,让键盘中断?
我在一个文件中有这个代码片段
...
(handler-case
...
((not simple-error) () (error! +400+ ready)))
...
其目的是处理错误,但让用户使用键盘中断(在 Linux 上的 SBCL 中表现为simple-error
)来中断程序。但是,这似乎不起作用(CCL
即使主代码没有引发错误,该错误子句似乎也会触发)。
在这种情况下正确的方法是什么?