上一个功能输入参数正确存储

Wol*_*and 2 clojure

我开始学习clojure所以原谅noob问题我尝试实现以下功能

伪代码:

function(x y) {
  if (x != oldX)
    dosomething(y);
  oldX = x;
}
Run Code Online (Sandbox Code Playgroud)

oldX 是全局变量

我怎么能正确地做这个clojure方式?

我写了一些东西,但这是正确的方式吗?

(defn rec [x y]  
  (if (not= x oldX)
    (println "y"))
  (def oldX x))
Run Code Online (Sandbox Code Playgroud)

cgr*_*and 5

defs应该只是顶级.(def oldX (atom nil))而且(reset! oldX x)更正确.