在REPL中抑制输出

时间:2017-03-18 16:32:22

标签: clojure read-eval-print-loop

当调用返回内容的函数时,REPL打印输出。如何在不诉诸临时添加nil作为函数的最后一行的情况下禁止此打印?

1 个答案:

答案 0 :(得分:5)

这很容易做到。例如,如果您有一个名为f的函数,那么如您所知,您可以这样调用它:

(f)
;; hello yes this is f
;;=> :huge

但是如果你想忽略输出,你可以改为:

(do (f) nil)
;; hello yes this is f
;;=> nil

如果您愿意,还可以定义ignore函数来执行此操作:

(def ignore (constantly nil))

(ignore (f))
;; hello yes this is f
;;=> nil