1

我最近正在使用 REPL 进行更多交互式开发,并且我有一段代码将符号推送到全局动态变量(列表数据结构)上。问题是,我发现自己反复重新加载将该符号推送到全局的文件,因此每次重新加载时,我都会将另一个重复的符号推送到列表中。

我希望每个 lisp 会话只执行一次推送操作,无论重新编译/重新加载的次数如何,以模仿在更传统/部署的环境中事情的行为,当我只加载一次代码时lisp 会话。

这是我现在使用的方法。我希望有更好的方法......

(defvar *do-only-once*
  (progn
    (push 'some-val *some-global-lst*)
    'evaled))
4

1 回答 1

2

我只会使用PUSHNEW代替。

于 2012-06-19T20:45:25.787 回答