【发布时间】:2020-12-01 18:04:30
【问题描述】:
如果我一直在使用 clojure REPL(可能一直在试验 (assoc) 或 (seq) 或 (reduce) 并创建了一些临时映射作为示例),但想打印在那次会议,有没有办法做到这一点?像 (println def) 什么的?
【问题讨论】:
标签: clojure
如果我一直在使用 clojure REPL(可能一直在试验 (assoc) 或 (seq) 或 (reduce) 并创建了一些临时映射作为示例),但想打印在那次会议,有没有办法做到这一点?像 (println def) 什么的?
【问题讨论】:
标签: clojure
如果您位于 user 命名空间中,则可以使用 (dir user)。或您感兴趣的任何其他ns。这向您展示了所有def-ed 的东西。如果它不存在(它通常会在 REPL 中自动获得 useed,您可以在 clojure.repl/dir 中找到它)。
【讨论】:
ns-interns 我认为可以让你非常接近。
user=> (def x 1)
#'user/x
user=> (def y 2)
#'user/y
user=> (ns-interns *ns*)
{x #'user/x, y #'user/y}
【讨论】: