你好,stackoverflow的人,我在跟随Adam Peterson's Lisp for the Web tutorial时遇到了一个奇怪的问题。问题可能是Clozure CL的一个问题,但我只是想提供一些背景知识。
发生的事情很简单。我通过做(defvar * games *'())来声明变量* games *。当我声明一个引用这个变量的函数时,例如game-from-name,编译器只是对我大喊大叫未声明的自由变量*游戏*。
有谁知道为什么会这样?
答案 0 :(得分:3)
您可以在不同的包中执行。尝试在您定义的位置检查*in-package*
变量的值并访问该变量以检查哪个包是最新的。您可以使用in-package
宏来设置当前包。