jolt/test/spec
Yogthos 7ca88ab2b5 core: move the pure-leaf fns to the overlay; memfn is a real macro now
Round 3 of the seed shrink. To the overlay: identity, constantly, neg?,
even?, odd? (20-coll, ahead of their first in-tier uses), not= and unreduced
(00-syntax — the kernel and seq tiers use them), ==, ensure-reduced,
halt-when, parse-boolean, parse-uuid, newline, seque, array-seq, to-array-2d,
and the masking unchecked-byte/short/char/float/double coercions. parse-uuid
validates via re-matches over a new __make-uuid host binding (overlay source
can't write :jolt/type map literals). memfn moves to 30-macros as a working
macro over the .method call sugar instead of a fn that throws.

Behavior fixes toward Clojure, each with spec rows: == now throws on
non-numbers instead of comparing them, and halt-when is the canonical
::halt-map version (the halt value replaces the whole reduction result, no
double completion). list? and map-entry? stay in the seed — both are
representation-coupled (plist/tuple checks).

clojure-test-suite goes 4701 -> 4700: update.cljc expects
(update {:k 1} :k identity 1 2 3 4) to throw an arity error, and jolt fns
don't enforce fixed arity anywhere (pre-existing, language-wide — the seed's
Janet identity threw natively). Filed as jolt-6xn; fixing it should flip
several suite rows at once.
2026-06-11 12:38:12 -04:00
..
control-flow-spec.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
core-async-spec.janet feat: core.async Phase 3 — channel transducers + dropping/sliding buffers 2026-06-05 15:40:24 -04:00
destructuring-spec.janet Stage2 compile only (#12) 2026-06-09 14:20:38 -04:00
exceptions-spec.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
forms-spec.janet core: close the compile-path gaps that broke uberscripting Selmer + config 2026-06-11 01:31:50 -04:00
functions-spec.janet core: java shims for yogthos/config + three conformance fixes 2026-06-11 00:11:04 -04:00
futures-spec.janet core: lazy realization is shared across walks (once-only effects); pmap family 2026-06-10 19:14:49 -04:00
hierarchy-spec.janet core: Stage 3 — the hierarchy system is pure Clojure (canonical port) 2026-06-10 13:19:05 -04:00
host-interop-spec.janet core: java shims for yogthos/config + three conformance fixes 2026-06-11 00:11:04 -04:00
inst-spec.janet core: #inst instant values + syntax-quote literal collapse (spec 2.3/2.4) 2026-06-10 12:19:23 -04:00
io-spec.janet core: Stage 3 — the *in* reader family is Clojure (50-io tier) 2026-06-10 14:52:40 -04:00
lazy-seqs-spec.janet core: lazy realization is shared across walks (once-only effects); pmap family 2026-06-10 19:14:49 -04:00
lists-spec.janet test(spec): collections contract (sequences, vectors, lists, maps, sets) 2026-06-05 00:08:37 -04:00
macros-spec.janet core: spec 35-var batch A — 1.11 parsers, map/partition variants, with-redefs, ns fns 2026-06-10 11:16:54 -04:00
maps-spec.janet core: staged recompile for early defns; keys/vals/empty? leave the seed (jolt-4j3) 2026-06-10 16:16:23 -04:00
metadata-spec.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
missing-vars-spec.janet core: the last seven missing-portable vars — coverage gap closed (jolt-brh) 2026-06-10 17:22:28 -04:00
multimethods-spec.janet core: delete seed fns shadowed by the overlay; fix methods/remove-all-methods 2026-06-11 09:21:25 -04:00
namespaces-spec.janet core: close the compile-path gaps that broke uberscripting Selmer + config 2026-06-11 01:31:50 -04:00
nrepl-spec.janet feat(nrepl): nREPL server + client in Clojure on a Janet interop bridge 2026-06-05 21:25:23 -04:00
ns-var-spec.janet core: *ns* — the current-namespace dynamic var 2026-06-10 13:05:15 -04:00
numbers-spec.janet core: move the pure-leaf fns to the overlay; memfn is a real macro now 2026-06-11 12:38:12 -04:00
predicates-spec.janet core: close the compile-path gaps that broke uberscripting Selmer + config 2026-06-11 01:31:50 -04:00
protocols-spec.janet test: fold phase ports into spec; promote compile-mode test 2026-06-05 01:07:09 -04:00
reader-forms-spec.janet core: #inst instant values + syntax-quote literal collapse (spec 2.3/2.4) 2026-06-10 12:19:23 -04:00
reader-syntax-spec.janet core: three bug fixes — ifn?, prefer-method dispatch, reader comments in map values 2026-06-10 21:03:14 -04:00
regex-spec.janet regex: \p{...} property classes; interop: the String method surface (cuerdas is green) 2026-06-10 21:29:22 -04:00
sequences-spec.janet core: seq walks over concrete collections are linear (bench TOTAL -18%) 2026-06-10 18:56:19 -04:00
sets-spec.janet core: Stage 3 — sorted collections are pure Clojure (canonical port) 2026-06-10 14:39:02 -04:00
sorted-spec.janet core: Stage 3 — sorted collections are pure Clojure (canonical port) 2026-06-10 14:39:02 -04:00
stage3-io-ns-spec.janet core: edn :readers/:default opts; uncaught throws no longer leak the callee's ns 2026-06-10 18:16:06 -04:00
state-spec.janet test: fold ported-clojure batteries into spec 2026-06-05 07:50:16 -04:00
strings-spec.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00
transducers-spec.janet core: move the pure-leaf fns to the overlay; memfn is a real macro now 2026-06-11 12:38:12 -04:00
transients-spec.janet feat(strictness): subs validates bounds; assoc! bounds-checks vector index 2026-06-05 14:07:14 -04:00
truthiness-spec.janet test: fold ported-clojure batteries into spec 2026-06-05 07:50:16 -04:00
untested-vars-spec.janet core: move the pure-leaf fns to the overlay; memfn is a real macro now 2026-06-11 12:38:12 -04:00
uuid-spec.janet core: proper uuid support — fix random-uuid, add parse-uuid, real uuid values 2026-06-10 10:27:24 -04:00
vectors-spec.janet Compiler research (#10) 2026-06-09 07:30:25 +08:00