clojure - 将 var 或 #' 应用于 Clojure 中的函数列表

标签 clojure functional-programming

我正在尝试读取 Clojure 中函数集合的元数据,但 var 或 reader 特殊形式不起作用,除非它们直接处理符号。

; this works
(var my-fn)

; this doesn't
(defn val-it [x] (var x))
(val-it my-fn)

有什么方法可以让它在另一个函数的范围内工作吗?

最佳答案

resolve 返回当前命名空间上下文中给定符号对应的 Var 或类对象。 ns-resolve 允许您指定在哪个命名空间中解析符号。

(resolve 'my-fn)
;= #'some.ns/my-fn

如果符号无法解析为 Var,则返回 nil

关于clojure - 将 var 或 #' 应用于 Clojure 中的函数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23125246/

相关文章:

clojure - 有没有办法摆脱加载的 clojure 类?

java - 用于穿越 NAT 的 clojure 友好 Java 库

c++ - 优化复合 std::functions

javascript - JavaScript 中的重构模式

带有参数的 Java 8 流映射

使用 clojure 在 Heroku 上进行 HTTP 流式处理/分块响应

宏,clojure vs common lisp

clojure - 当一个负值传递给这个 abs 函数时,Clojure 如何产生一个正值?

java - Apache-Commons Commons-Functor 现状

java - 我们需要 BiFunction 接口(interface)做什么?