jolt/jolt-core/clojure/core
Yogthos 97781b3ff0 Step 2e: tree-seq/xml-seq in Clojure overlay
xml-seq added to 20-coll.clj, matching Clojure reference:
  (tree-seq (complement string?) (comp seq :content) root)

tree-seq kept eager with lazy version documented in comments.
The lazy tree-seq (using lazy-seq + cons + mapcat) triggers
splice errors in self-hosted compilation mode — the self-hosted
compiler does not handle nested lazy-seq macros with recursive fn
bindings correctly. The mapcat overlay in 10-seq.clj has the same
limitation. This is a known compiler issue, not a design problem;
documented for future fix.

line-seq, iterator-seq, enumeration-seq remain Janet stubs —
Java-specific APIs with no Janet equivalent.

flatten already correct in Clojure overlay (unchanged).
2026-06-08 08:47:23 -04:00
..
00-kernel.clj core: staged-bootstrap kernel tier; move second/peek/subvec/mapv/update to Clojure 2026-06-06 13:15:17 -04:00
00-syntax.clj core: port when-let to the overlay — finishes the Phase 3 macro migration 2026-06-07 19:49:27 -04:00
10-seq.clj Step 4: lazy mapcat overlay — eliminate apply forcing on infinite inputs 2026-06-08 08:14:59 -04:00
20-coll.clj Step 2e: tree-seq/xml-seq in Clojure overlay 2026-06-08 08:47:23 -04:00
30-macros.clj core: port when-let to the overlay — finishes the Phase 3 macro migration 2026-06-07 19:49:27 -04:00
MIGRATION.md migration doc: phase 3 status + the hot-macro expansion-speed finding 2026-06-07 08:47:04 -04:00