jolt/jolt-core/clojure/core
Yogthos af3e49a89c core: cold tagged-type printing migrates to print-method defmethods
The first per-type migration print-method unlocked: uuid, regex, transient,
and channel rendering move from host pr-render branches to io-tier
defmethods (exact same output). The renderer's tagged fallthrough now
dispatches ANY remaining :jolt/* value through the print-method hook before
the raw pairs view — so every tagged type is user-overridable, atoms
included ((defmethod print-method :jolt/atom ...) fires nested), and future
per-type migrations are pure overlay additions.

Hot types (numbers, strings, symbols, collections) stay native, and inst/
namespace/var stay host for now — their formatters (rfc3339, display names)
live there anyway. A transient's :kind is read with jolt.host/ref-get: get
on a transient is the dispatched collection lookup (same trap as sorted
colls).

Before the hook is wired (init-time error messages) tagged values fall
through to the pairs view — bootstrap rendering only.
2026-06-11 18:35:21 -04:00
..
00-kernel.clj Compiler research (#10) 2026-06-09 07:30:25 +08:00
00-syntax.clj core: zero?/pos?/every? to 00-syntax, char? to the overlay; fix rest/next over sets and maps 2026-06-11 13:24:51 -04:00
10-seq.clj Compiler research (#10) 2026-06-09 07:30:25 +08:00
20-coll.clj core: print-method is a real multimethod (jolt-g1r); records print canonically 2026-06-11 18:10:11 -04:00
25-sorted.clj core: staged recompile for early defns; keys/vals/empty? leave the seed (jolt-4j3) 2026-06-10 16:16:23 -04:00
30-macros.clj core: move the pure-leaf fns to the overlay; memfn is a real macro now 2026-06-11 12:38:12 -04:00
40-lazy.clj core: lazy realization is shared across walks (once-only effects); pmap family 2026-06-10 19:14:49 -04:00
50-io.clj core: cold tagged-type printing migrates to print-method defmethods 2026-06-11 18:35:21 -04:00