fibers B1.2: lambda-only async (named-fn :: feature deferred)
User decision: ship B1.2 async with lambda workers (works today, zero compiler change); defer named-fn workers, which need a new :: callable- parameter language feature (3 failed worker attempts; partial WIP saved at .sx-tmp/wip-callable-params/). Records the resolved lambda async idiom + resume plan; no compiler/library code changed.
This commit is contained in:
@@ -140,6 +140,14 @@ fibers/Io/scheduler code yet. Grounded floor facts:
|
||||
boundary; a sharper sx diagnostic for it is a candidate polish, not a blocker.
|
||||
|
||||
## Next step
|
||||
**DECISION (user, 2026-06-20): B1.2 async = LAMBDA workers only for now; named-fn workers
|
||||
(`async(read_a, conn)`) are DEFERRED.** Named-fn support needs a new `::` callable-parameter
|
||||
language feature (`fn :: (..$args) -> $R` param) that doesn't exist yet — it failed 3 worker
|
||||
attempts; the partial WIP (parser+scaffolding done, type-pack/return inference INCOMPLETE —
|
||||
panics on every form) is saved at `.sx-tmp/wip-callable-params/patch.diff` for a dedicated
|
||||
future effort. So B1.2 ships with the lambda idiom below; call sites use
|
||||
`context.io.async((c) => read_a(c), conn)` until the `::` feature lands.
|
||||
|
||||
**B1.2 — resume now (UNBLOCKED, no compiler fix needed).** Re-land from the saved WIP
|
||||
(`.sx-tmp/b12-wip/`): keep the verified-working parts — the `Io` protocol on `Context`, both
|
||||
`__sx_default_context` materializers (protocol.zig + comptime_vm.zig), the push-inherit-omitted
|
||||
|
||||
Reference in New Issue
Block a user