clojure - 使用带有 nrepl 的替代 eval

标签 clojure read-eval-print-loop nrepl

我可以传递 clojure.main/repl 一个将用于 eval 输入的函数(感谢 :eval 关键字)。但是我该如何使用 nrepl 来做到这一点呢?我读了一些有关处理程序的内容,但它很快就变得难以理解且抽象。

另外,由于我主要使用 lein repl 启动它,有没有办法在 project.clj 文件中指定我的 eval:repl-options 似乎不接受 :eval 关键字。

最佳答案

看一下可中断评估中间件:https://github.com/clojure/tools.nrepl/blob/master/src/main/clojure/clojure/tools/nrepl/middleware/interruptible_eval.clj

您可以制作类似的东西并使用 start-server 函数手动启动 nrepl。或者有一个用于 nrepl 中间件的 lein 选项。

关于clojure - 使用带有 nrepl 的替代 eval,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34635761/

相关文章:

scala - 包含 bang 的方法在 REPL 中不起作用

Scala 解释器 : anyway to get the line of a compile error?

clojure - Clojure 1.8的套接字repl和nREPL有什么具体区别?

ClojureScript 参数声明错误

emacs - clojure.tools.namespace refresh-all 后 clojure.repl 命名空间丢失

read-eval-print-loop - REPL 与 Java 9 的实际使用

clojure - 从远程 nrepl 传输值

clojure - 如何获取正在运行的 REPL 的 nREPL 端口?

clojure - 在 Clojure 中实现中断

data-structures - clojure 中是否有内置数据结构支持重复元素和 O(1) 删除?