4

一个初学者的问题。

使用 lein + emacs + nrepl 运行 clojure。

我对以下内容有些困惑:

我希望使用指数函数。该函数位于以下位置clojure.math.numeric-tower。我添加[org.clojure/math.numeric-tower "0.0.1"]到依赖项并运行lein deps.

现在有可能(我确信有可能)将其添加到我.core ns的如下:

(ns learning.core
  (:require [clojure.math.numeric-tower :as math]))

(def i-know-the-answer
  (math/expt 2 10))

现在,当我尝试将 ( ctl-x e) 加载到 REPL 中时,它会引发错误。

clojure.lang.Compiler$CompilerException: java.lang.RuntimeException: No such namespace: math, compiling:(NO_SOURCE_PATH:2)

依赖项是否需要直接加载到 REPL 中?我可以不只是更改源文件/重新编译并使用它吗?

4

1 回答 1

4

使用 ctrl-c ctrl-l 加载文件,然后将您的 repl 切换到该文件中的命名空间

(in-ns 'learning.core)

或者从 Clojure 缓冲区中按 ctrl-c alt-n 以将 repl 切换到缓冲区的命名空间。您可以通过查看 repl 中的提示来判断它是否有效。

于 2012-10-29T00:26:23.687 回答