Вопрос Noob, используя 64-разрядную версию Win7, Clojure 1.2.0, Java 1.6.0_22
Когда я запускаю Clojure из командной строки, функция pprint легко доступна.
user=> pprint
#<pprint$pprint [email protected]>
user=> (pprint "hi")
"hi"
nil
user=>
Но когда я пытаюсь использовать pprint из файла, я получаю сообщение об ошибке. Это происходит с и без пространства имен (ns...: require...), как показано в документации pprint
clj файл следующим образом:
(ns whatevah
(:require clojure.pprint))
(pprint "hi")
Ошибка:
C:\Users\mischw\code\Clojure>java -cp ";c:\users\mischw\code\clojure\classes\*;c:\Program Files (x86)\Java\SWT;c:\users\mischw\code\clojure\classes\bookcode\*" clojure.main swinglearn.clj
Exception in thread "main" java.lang.Exception: Unable to resolve symbol: pprint in this context (swinglearn.clj:14)
... 21 more
Output completed (0 sec consumed) - Normal Termination
Я не понимаю общей идеи о том, что происходит здесь. Почему одно работает, а не другое? Это связано с пространствами имен?? Пути к классам Некоторые другие простые исправления? Ясно, что вопросы noob, но я нахожу это случаем с кучей примеров... Я не могу запустить их, хотя кажется, что им просто нужно импортировать/использовать/требовать/включать их.