私はClojureを学んでいますが、これまでのところ、途方もなく基本的なこの小さな難問を理解することはできません。
私はこのファイルを持っています:
(ns cloapp.core
(:gen-class))
(defn -main
"I don't do a whole lot ... yet."
[& args]
(println "Hello, World!")
(println "Well Hi there, im a string !")
(println "Why wont this work !")
(myFunc "Hiya"))
(defn myFunc [aVar]
(println aVar))
これをで実行しようとすると、
lein run
それは文句を言って言います、
Caused by: java.lang.RuntimeException: Unable to resolve symbol: myFunc in this context
しかし、myFuncへの呼び出しをmainから削除して実行すると、
lein repl
cloapp.core=> (myFunc "Hiya !")
Hiya !
nil
cloapp.core=>
それなら私はそれを呼ぶことができます。どうしてこれなの ?名前空間と関係があると思いますが、それを読んでもうまくいきません。
A