为什么这会让我陷入SBCL的LDB?

时间:2014-04-25 21:40:00

标签: lisp common-lisp sbcl slime

此代码将我从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崩溃而不是终端?

1 个答案:

答案 0 :(得分:0)

请注意,允许有效(ANSI)Common Lisp实现忽略除special声明之外的任何声明。我想SLIME REPL在这里的行为略有不同(因为它与sbcl toplevel不同 - 它增加了一些重用以前的结果)