Round 6 of the seed shrink (the printer round, scoped by the perf wall). The five wrappers move to 20-coll over two new host seams: __write (push a string to *out*) and __pr-str1 (render one value readably). The renderer itself stays in the seed — it's representation-coupled (pvec/phm/phs/sorted internals) and shared with the hot str, and rendering through overlay calls would pay the per-element call cost everywhere big values get printed. print-method as a real multimethod is follow-up work. The new spec rows caught a renderer bug: string bodies were never escaped, so (pr-str "a\"b") didn't round-trip through the reader. pr-render now escapes quote/backslash/control chars per Clojure. |
||
|---|---|---|
| .. | ||
| 00-kernel.clj | ||
| 00-syntax.clj | ||
| 10-seq.clj | ||
| 20-coll.clj | ||
| 25-sorted.clj | ||
| 30-macros.clj | ||
| 40-lazy.clj | ||
| 50-io.clj | ||