1
最近我用REPL進行了更多的交互式開發,並且我有一段代碼將一個符號推入全局動態變量(一個列表數據結構體)。問題是,我發現自己反覆重新加載將該符號推入全局的文件,因此每次重新加載時,都會將另一個重複符號推入列表中。common lisp:爲一個lisp會話只評估一次頂級表單
我希望對每個lisp會話只進行一次push操作,無論重新編譯/重新加載的次數如何,以模擬事情在更傳統/部署環境中的行爲,當我加載代碼時只有一次爲lisp會議。
下面是我現在使用的方法。我希望有一個更好的辦法....
(defvar *do-only-once*
(progn
(push 'some-val *some-global-lst*)
'evaled))