在clojure中,如何使用匿名函数文字来编写身份函数?

vie*_*bel 11 clojure anonymous-function

如何使用匿名函数文字(#())在clojure中编写身份函数?

以下代码不起作用:

(#(%) 5)
Run Code Online (Sandbox Code Playgroud)

它引发了一个异常,因为它被转换为:

((fn[x] (x)) 5)
Run Code Online (Sandbox Code Playgroud)

问题在于,当使用#()时,函数体用括号括起来.任何想法,如何优雅地克服这个?

Pet*_*ris 24

嗯,首先,有identity功能.

但你可以使用

#(do %)
Run Code Online (Sandbox Code Playgroud)

如果你坚持.