我在这里读到“允许实现忽略”Common Lisp 中的动态范围声明,我想知道它是否实际上在 CLISP 实现中被忽略了。
我尝试使用以下代码进行测试:
(let ((b (cons 1 2)))
(declare (dynamic-extent b))
(list b))
Run Code Online (Sandbox Code Playgroud)
返回:
((1 . 2))
Run Code Online (Sandbox Code Playgroud)
我的猜测是它被忽略了,但我想确定一下。
另外,如果它被忽略,我有没有办法将内存显式分配给堆栈而不是堆?