此代码将我从SLIME中删除到SBCL中的LDB,但不是通过术语:
(declaim (optimize debug)) ;; inhibit tail-call optimization
(defun stackoverflow () ;; infinite recursion
(stackoverflow))
(unwind-protect
(stackoverflow)
(stackoverflow)) ;; called during handler for the first stack overflow
为什么这会导致SBCL从SLIME崩溃而不是终端?
答案 0 :(得分:0)
请注意,允许有效(ANSI)Common Lisp实现忽略除special
声明之外的任何声明。我想SLIME REPL在这里的行为略有不同(因为它与sbcl toplevel不同 - 它增加了一些重用以前的结果)