我想用trace
来分析我的代码的执行,因此我输入
(trace oddp)
进入 REPL。与我的预期相反,我收到了一条错误消息,告诉我:
** - Continuable Error
TRACE(ODDP): #<PACKAGE COMMON-LISP> is locked
If you continue (by typing 'continue'): Ignore the lock and proceed
这到底是什么意思,为什么会发生这种情况,忽略锁是否安全?
TRACE
的工作原理是将函数重新定义为打印跟踪消息然后调用原始函数的内容。但是通常不允许重新定义内置函数,因此会出现此错误。