jolt/test/clojure-stdlib/clojure
Yogthos e623968b45 stdlib: port clojure.data, rewrite clojure.zip; fix with-meta nil; add battery
clojure.data: ported from the ClojureScript impl (jolt-native equality-partition
fn instead of host-type protocol dispatch). Verified against Clojure's own
data-test (12/13 canonical; the 13th needs nil-valued-map support, jolt-c7h).
Used mapv over the reference's (doall (map …)) — jolt's lazy multi-coll map +
doall don't force as a reduce accumulator (jolt-dzh).

clojure.zip: jolt's was a broken custom reimplementation; replaced with a port of
real clojure.zip (metadata-based locs). Uses (nth loc …) instead of (loc …)
because meta-bearing vectors aren't invocable as fns (jolt-vh5).

core: with-meta now accepts nil metadata (Clojure allows (with-meta x nil)); it
crashed calling keys on nil. This is what unblocked zip's make-node.

New vendored battery (test/clojure-stdlib/, from clojurust's suite with fixtures
corrected to match real Clojure): walk 34, zip 33, data 61 all clean; edn guarded
at 43 (still a stub — jolt-b7y). Conformance 218/218 all modes; full suite green.
2026-06-06 19:02:26 -04:00
..
data_test stdlib: port clojure.data, rewrite clojure.zip; fix with-meta nil; add battery 2026-06-06 19:02:26 -04:00
edn_test stdlib: port clojure.data, rewrite clojure.zip; fix with-meta nil; add battery 2026-06-06 19:02:26 -04:00
walk_test stdlib: port clojure.data, rewrite clojure.zip; fix with-meta nil; add battery 2026-06-06 19:02:26 -04:00
zip_test stdlib: port clojure.data, rewrite clojure.zip; fix with-meta nil; add battery 2026-06-06 19:02:26 -04:00