我對差異的行爲感到困惑以下表達式:Clojure的元數據
(pr (meta ^{:a 0} (list 1 2))) ;; prints nil returns nil
(pr (meta ^{:a 0} '(1 2)));; prints {:line 110, :column 20} returns nil
(pr (meta ^{:a 0} (range 1 3))) ;; prints nil returns nil
(pr (meta ^{:a 0} [1 2])) ;; prints {:a 0} returns nil
這是使用Clojure的1.8.0。我希望能解釋爲什麼結果會有所不同。