假设我想在REPL中做类似以下的事情:
错误如下:
(ns a1)
(defn adder [a b]
(+ a b))
(ns b1
(:require [a1 :as a]))
(println (a/adder 1 2))
如果代码按照声明的命名空间在文件中定义,那么这样做是有效的。然而,如果我们在REPL中执行它,那么就会在这一行出现错误:
(ns b1
(require [a1 :as a]))
错误如下:
FileNotFoundException Could not locate a1__init.class or a1.clj on classpath:
clojure.lang.RT.load (RT.java:432)
现在我知道我可以显式地在命名空间中放置完整名称:
(println (a1/adder 1 2))
我想要缩写我的命名空间名称(如果我的命名空间名称长度超过20个字符)。
我需要做哪些更改,以确保我可以在REPL中使用缩写的方式引用不同的命名空间?