我还在学习 lisp,所以,当我遇到这个问题时,我感到很困惑。我有一个简单的功能,我想先打印然后读取输入:
(defun ask()
(princ '?)
(read))
所以,当我用 CLISP 运行它时,它显示了预期的结果,它打印了?,然后,在同一行,我可以将输入写入 read 函数。
当我用 SBCL 运行它时,它出错了。首先询问我的输入,然后打印 ?。我想这可能是因为我没有制作换行符,但我真的很想知道如何在 SBCL 的同一行中进行这项工作。另外,我想知道为什么 CLISP 中的结果是正确的,而 SBCL 中的结果却不是。提前谢谢你的帮助。