为什么不返回值的 Clojure 函数返回 nil?



我是 Clojure 的新生,当我调用不返回值的函数时,我不明白为什么在 REPL 中返回"nil"。

上面的例子:

(println "Hello Nil")
nil

什么类型的评估过程达到"零"?

像 Clojure 这样的函数式语言的约定是,每个函数都需要只返回一个值。对于旨在执行副作用(如打印到屏幕(的函数(如println(,并不总是清楚返回值可能或应该是什么。

在这些情况下,nil 是一个占位符值,表示"无"或"不适用"。

最新更新