评论由:pbwolf
原始问题从 {{toString}} 开始。一个更明显的问题是,该问题表明{{pr}}在生成 EDN 时不可靠。
中间是否存在的 {{print-str}}(调用者 {{pr}} 可能与此无关)对结果有重大影响
`
user> (clojure.edn/read-string
(first
(clojure.edn/read-string
(let [mk-str (fn [] (lazy-seq [(str ["ZiZi"])]))
a (mk-str)]
;(print-str a)
(pr-str a)))))
["ZiZi"]
user> (clojure.edn/read-string
(first
(clojure.edn/read-string
(let [mk-str (fn [] (lazy-seq [(str ["ZiZi"])]))
a (mk-str)]
(print-str a)
(pr-str a)))))
[ZiZi]
`