From 3da5a5fcfaac5b7bfac4a50d02c0dae974e0c0f0 Mon Sep 17 00:00:00 2001 From: Yogthos Date: Mon, 8 Jun 2026 23:55:03 -0400 Subject: [PATCH] docs: partition-all letfn is for minimal realization, not jolt-zxw MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit jolt-zxw (multi-arity arity-param mis-capture in a nested lazy-seq under :compile?) is no longer reproducible: an arity-direct partition-all now compiles correctly in the overlay. The original failure was an artifact of the CLJ multi-arity version coexisting with the Janet core-partition-all ([n & rest]) during migration — the shadowing confused multi-arity dispatch; removing the Janet version resolved it. The letfn in partition-all stays purely for minimal realization (jolt-yo3). --- jolt-core/clojure/core/40-lazy.clj | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/jolt-core/clojure/core/40-lazy.clj b/jolt-core/clojure/core/40-lazy.clj index f715491..655e4be 100644 --- a/jolt-core/clojure/core/40-lazy.clj +++ b/jolt-core/clojure/core/40-lazy.clj @@ -104,10 +104,9 @@ ;; --- partition-all --- (transducer + [n coll] + [n step coll]) ;; The collection arities realize EXACTLY n per chunk via a first/rest loop and -;; continue from the advanced cursor (not a re-drop), so they realize minimally -;; — matching the Janet pstep the §6.3 laziness counters were written against. -;; letfn-bound `go` (not arity-direct recursion) sidesteps the compile-mode -;; multi-arity closure-capture bug (jolt-zxw), as keep-indexed/map-indexed do. +;; continue from the advanced cursor (not a re-drop / nthrest), so they realize +;; minimally — matching the Janet pstep the §6.3 laziness counters were written +;; against. (A take/nthrest form is correct but over-realizes.) (defn partition-all ([n] (fn [rf]