次のコードがコンパイルに合格できないのはなぜですか?
(defn testit [asym] (var asym))
エラーは次のとおりです。
CompilerException java.lang.RuntimeException: Unable to resolve var: asym in this context, compiling:(NO_SOURCE_PATH:1)
次のコードがコンパイルに合格できないのはなぜですか?
(defn testit [asym] (var asym))
エラーは次のとおりです。
CompilerException java.lang.RuntimeException: Unable to resolve var: asym in this context, compiling:(NO_SOURCE_PATH:1)
asymはありませんvar。ローカルです。この場合、変数の値として定義している関数への唯一の引数ですtestit。
asymその関数から戻りたい場合:
(defn testit [asym] asym)
asym戻りたい var を指定するシンボルの場合は、次を使用しresolveます。
(defn testit [asym] (resolve asym))
一般的な注意:は、リーダー構文に対応する(var x)拡張特殊形式#'xです。