2010-12-16 40 views

回答

5
(def x 0) 
x ; => 0 
(def x 1) 
x ; => 1 

你不能從另一個命名空間重新定義一個var,所以你應該在重新定義之前用in-ns切換到它的命名空間。

+1

注意:如果你這樣做,你應該100%確定沒有更好的辦法。 – nickik 2010-12-17 00:43:41

+0

這是否意味着您將不得不再次「評估」def? – Zubair 2010-12-17 09:02:27

+0

是的。如果你使用的是粘液,只需在源代碼中更改def並使用C-x C-e對其進行評估即可。 – koddo 2010-12-17 13:06:34

2

您也可以在repl上調用加載或加載文件。

(load-file "foo/bar.clj") 
(load "foo/bar")