Why. No raw sockets is the biggest "real standalone program" blocker on the roadmap — network protocols are only writable via the canned HTTP extension. The differentiating design: every read/accept/timeout enters through the trace-tape seam, so EigenScript becomes the only language whose stdlib gives network programs record/replay debugging by default — "replay last night's flaky failure exactly" is something Go's net and Python's socket cannot say.
What.
src/ext_net.c (opt-in extension like ext_http): net_listen / net_accept / net_send / net_recv / net_dial, with timeouts.
- Every nondeterministic result is a tape record per the eigenscript-extend-vm nondet-builtin checklist — recording and replay are part of the definition of done, not a follow-up.
examples/net_echo.eigs.
- Forcing function: liferaft nodes talking over real sockets, a seeded kill replayed byte-for-byte (its sim harness is the transcript oracle).
- This is also the upstream seam EigenOS M13 (e1000 NIC) will eventually target.
Acceptance. Echo example records under EIGS_TRACE and replays without the network present; liferaft real-socket demo green; extension absent from the default 420K build.
Effort: weeks. Source: 2026-07-04 survey (stdlib dimension).
Why. No raw sockets is the biggest "real standalone program" blocker on the roadmap — network protocols are only writable via the canned HTTP extension. The differentiating design: every read/accept/timeout enters through the trace-tape seam, so EigenScript becomes the only language whose stdlib gives network programs record/replay debugging by default — "replay last night's flaky failure exactly" is something Go's net and Python's socket cannot say.
What.
src/ext_net.c(opt-in extension like ext_http):net_listen/net_accept/net_send/net_recv/net_dial, with timeouts.examples/net_echo.eigs.Acceptance. Echo example records under EIGS_TRACE and replays without the network present; liferaft real-socket demo green; extension absent from the default 420K build.
Effort: weeks. Source: 2026-07-04 survey (stdlib dimension).