CompilerException java.lang.RuntimeException:无法在此上下文中解析symbol:invert-helper

时间:2014-09-01 21:43:04

标签: clojure

我对关闭很新,我不明白为什么我在运行时收到此错误消息。这是我的代码:

(defn invert [lst]
  (if (empty? lst)
    ()
    (cons (invert-helper lst) (invert (rest lst)))))

(defn invert-helper [lst]
  (list (nth lst 1) (first lst)))

1 个答案:

答案 0 :(得分:3)

这应解决问题:

(defn invert-helper [lst]
  (list (nth lst 1) (first lst)))

(defn invert [lst]
  (if (empty? lst)
    ()
    (cons (invert-helper lst) (invert (rest lst)))))

即:invert-helper函数必须在invert首次使用之前定义。