Chez parity: delay / force / realized? (jolt-cf1q.7)
Add a thread-safe delay type (concurrency.ss): make-delay wraps a thunk; deref/ force run it once under a lock and cache (JVM delays are thread-safe + memoized). delay? and realized?-on-a-delay are native; the overlay's `delay` macro (-> make-delay) and `force` (-> deref) now work. realized? wrapper (post-prelude) and the deref chain gain a delay arm. Removed the np-delay? stub from natives-parity.ss (the real type lives in concurrency.ss). Seed unchanged (no re-mint). zero-Janet 2673->2685, 0 new divergences; Janet gate + JVM cert green. jolt-cf1q.7
This commit is contained in:
parent
4b4d677fe4
commit
1d6e740668
4 changed files with 26 additions and 11 deletions
|
|
@ -214,9 +214,9 @@
|
|||
# "send/send-off applies" sync-shim cases now match the JVM's async raciness and
|
||||
# are allowlisted) -> 2567. jolt-cf1q.7 parity batches (hash/rseq/cat/transient-as-fn
|
||||
# + ns runtime fns) -> 2600; arrays -> 2631; reader-features/reader-conditional/
|
||||
# re-matcher/macroexpand/delay? -> 2642; runtime-defmacro cases via top-level eval
|
||||
# of ACTUAL (matching certify.clj's eval-isolated) -> 2673.
|
||||
(def base-floor (scan-number (or (os/getenv "JOLT_CHEZ_ZJ_FLOOR") "2673")))
|
||||
# re-matcher/macroexpand -> 2642; runtime-defmacro cases via top-level eval of
|
||||
# ACTUAL (matching certify.clj's eval-isolated) -> 2673; delay/force/realized? -> 2685.
|
||||
(def base-floor (scan-number (or (os/getenv "JOLT_CHEZ_ZJ_FLOOR") "2685")))
|
||||
(def floor (if (os/getenv "JOLT_CORPUS_LIMIT") 0 base-floor))
|
||||
(when (or (> (length diverged) 0) (< pass floor))
|
||||
(printf "REGRESSION: pass %d < floor %d or %d new divergence(s)" pass floor (length diverged)))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue