Record Lazypub

Source
:record(pub) Lazy val
  .value val
Description

One-shot initialisation cell. The spec's constructor accepts a nullary quotation computing the value; .force runs it on first call and caches the result.

WP-F1 followup deferral: Lazy stays stubbed because invoking the stored initializer quotation from inside a host intrinsic needs machine-instruction support that hasn't landed yet. The same limitation applies to OnceLock .get-or-init (see below). Host intrinsics only receive (stack, arena, symbols) — running a quotation requires the full VM execute loop to re-enter. The +Executor effect WP will wire compound instructions (mirroring RangeFold in src/machine.rs) that let host code drive a quotation; Lazy and OnceLock .get-or-init land with it.

Fields

.value val