core: move nfirst to the Clojure overlay

Same leaf-fn migration as ffirst/fnext/nnext. Full suite green, battery 3913.
This commit is contained in:
Yogthos 2026-06-06 11:49:09 -04:00
parent 30a308f3ef
commit c8810ee4aa
3 changed files with 3 additions and 3 deletions

View file

@ -8,5 +8,6 @@
;; already interned by init-core! (and on other overlay fns defined above it). ;; already interned by init-core! (and on other overlay fns defined above it).
(defn ffirst [coll] (first (first coll))) (defn ffirst [coll] (first (first coll)))
(defn nfirst [coll] (next (first coll)))
(defn fnext [coll] (first (next coll))) (defn fnext [coll] (first (next coll)))
(defn nnext [coll] (next (next coll))) (defn nnext [coll] (next (next coll)))

View file

@ -940,8 +940,7 @@
(if (jvec? coll) (make-vec dropped) dropped)))))) (if (jvec? coll) (make-vec dropped) dropped))))))
(defn core-second [coll] (core-first (core-rest coll))) (defn core-second [coll] (core-first (core-rest coll)))
(defn core-nfirst [coll] (core-next (core-first coll))) # ffirst / nfirst / fnext / nnext now live in the Clojure overlay (jolt-core/clojure/core.clj).
# ffirst / fnext / nnext now live in the Clojure overlay (jolt-core/clojure/core.clj).
(defn core-last [coll] (defn core-last [coll]
(let [c (realize-for-iteration coll)] (let [c (realize-for-iteration coll)]
@ -3807,7 +3806,6 @@
"ex-cause" core-ex-cause "ex-cause" core-ex-cause
"prefers" core-prefers "prefers" core-prefers
"random-uuid" core-random-uuid "random-uuid" core-random-uuid
"nfirst" core-nfirst
"last" core-last "last" core-last
"drop-last" core-drop-last "drop-last" core-drop-last
"take-last" core-take-last "take-last" core-take-last

View file

@ -81,6 +81,7 @@
(let [ctx (init opts)] (let [ctx (init opts)]
(defn ev [s] (normalize-pvecs (eval-one ctx (parse-string s)))) (defn ev [s] (normalize-pvecs (eval-one ctx (parse-string s))))
(assert (= 1 (ev "(ffirst [[1 2] [3 4]])")) "ffirst") (assert (= 1 (ev "(ffirst [[1 2] [3 4]])")) "ffirst")
(assert (= [2] (ev "(nfirst [[1 2] [3 4]])")) "nfirst")
(assert (= 2 (ev "(fnext [1 2 3])")) "fnext") (assert (= 2 (ev "(fnext [1 2 3])")) "fnext")
(assert (= [3 4] (ev "(nnext [1 2 3 4])")) "nnext"))) (assert (= [3 4] (ev "(nnext [1 2 3 4])")) "nnext")))