Noob, usando Win7 de 64 bits, Clojure 1.2.0, Java 1.6.0_22no puede conseguir pprint para trabajar en clojure
Cuando comienzo clojure de línea de comandos, la función pprint es fácilmente disponible.
user=> pprint
#<pprint$pprint [email protected]>
user=> (pprint "hi")
"hi"
nil
user=>
Pero cuando intento usar pprint de un archivo, aparece un error. Esto sucede con y sin espacio de nombres (NS ...: requiere ...) como se muestra en la documentación pprint
archivo clj de la siguiente manera:
(ns whatevah
(:require clojure.pprint))
(pprint "hi")
error de la siguiente manera:
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
I no entiendo la idea general de lo que está pasando aquí. ¿Por qué funciona uno pero no el otro? ¿Eso tiene que ver con los espacios de nombres? Classpaths? ¿Alguna otra solución simple? Claramente, las preguntas de los novatos, pero me parece que esto sucede con un montón de ejemplos ... No puedo ejecutarlos a pesar de que parece sencillo importarlos/usarlos/exigirlos/incluirlos.
impresionante, gracias, funcionó :). Sabía que era simple. Entonces, ¿por qué la réplica automáticamente 'use' clojure.pprint? ¿Cómo averiguo qué espacios de nombres ha cargado la réplica, así que la próxima vez que tenga este problema puedo resolverlo? – Sonicsmooth
La réplica no hace eso automáticamente. Tienes algún script loco de repl-launching que lo hace por ti; Si entró en más detalles sobre cómo está lanzando su réplica, es posible que obtenga una respuesta. – amalloy