clojure - 在clojure中,如何使用匿名函数字面量写恒等函数?

标签 clojure anonymous-function

如何使用 anonymous function literal (#()) 在 clojure 中编写恒等函数?

以下代码不起作用:

(#(%) 5)

它引发异常,因为它被转换为:
((fn[x] (x)) 5)

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

最佳答案

嗯,首先,有identity功能。

但是你可以使用

#(do %)

如果你坚持。

关于clojure - 在clojure中,如何使用匿名函数字面量写恒等函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9148896/

相关文章:

clojure - 将函数组合为 clojure 中高级函数的可选参数

javascript - 在 JavaScript 中 self 声明匿名函数之前的美元符号?

clojure - 如何以更实用的方式从 Clojure catch block 中重现?

python - 混合使用 Clojure 和 Python 是个好主意吗?

multithreading - 原子映射内的 Clojure Promise

javascript - 如何在 jQuery 中获取匿名函数中的变量?

.net - 委托(delegate)签名不匹配时没有错误

Clojure:我正在使用 http-kit 向服务器发布请求,但它对我来说效果不佳

javascript - typescript 如何编译类和普通匿名函数之间的实际区别是什么?

带有 array_walk 的 PHP 匿名函数