検討
(defn f ^{:foo "bar"} [x] (* x x))
と
(defn g #^{:foo "bar"} [x] (* x x))
コンパイルと実行の両方。
私は2つの質問があります:最初に、なぜだけを実行(meta f)
して(meta g)
生成するのnil
ですか?私は彼らが生産することを期待していたでしょう{:foo "bar"}
; さて、私はメタデータについて完全に昼食をとり、そこにある種のゴミを定義しましたか?
次に、メタデータの2つのシンタシスの違いは何ですか?2つ目は、拡張データ表記であるednと関係のある「タグ付きリテラル」のように見えますが、コンテキストや例がないと、完全に理解することはできません。