В Clojure 1.5 отсутствует документация в неименных пространствах имен
Что я должен сделать, чтобы получить doc
снова доступны?
brew install --devel leiningen
lein new app yeehaw
cd yeehaw
; edit project.clj and replace "1.4.0" with 1.5.0-RC1"
lein repl
yeehaw.core=> (doc map)
CompilerException java.lang.RuntimeException: Unable to resolve symbol: doc
in this context, compiling:(NO_SOURCE_PATH:1:1)
Это изменение происходит от CLJ-1085 и связанного с ним источника.
Обратите внимание, что doc
и обычная функциональность REPL по-прежнему доступна в user
namespace, но было бы неплохо иметь его под рукой в пространстве имен моего приложения, по крайней мере, в REPL.
2 ответа
Решение
Получить doc
в текущее пространство имен:
(clojure.core/use '[clojure.repl :only (doc)])
И после этого попробуйте doc
снова.
Благодаря помощи от clojure IRC, вот несколько вариантов:
- использование
clojure.repl/doc
вместоdoc
- использование
(apply require clojure.main/repl-requires)
принестиdoc
и другие функции REPL в новое пространство имен.