评论者:pbwolf
原始问题从 {{toString}} 开始。一个更明显的问题是,这个问题表明 {{pr}} 无法可靠地发出 EDN。
中间的 {{print-str}}(调用者可能与此无关)的有无会产生重大影响。
`
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]
`