xco

Concurrency for C
git clone https://git.ryansepassi.com/git/xco.git
Log | Files | Refs | README

commit b452af6ba0dc945a4cce2a32a57dcaeefaa9eeaf
parent d191587748e785931b220f9fd61f69c4d117be1b
Author: Ryan Sepassi <rsepassi@gmail.com>
Date:   Tue,  5 May 2026 15:54:51 -0700

README.md

Diffstat:
MREADME.md | 6+++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/README.md b/README.md @@ -7,8 +7,8 @@ hidden threads, no clocks. Single-threaded. Caller-provided storage. Bottom-up; each layer is a thin abstraction over the one below. -- **xco_mach** — generic resumable function. Step in a value, step out - a value, report suspended/dead. Substrate shared by stack-switching +- **xco_mach** — generic resumable function, a state machine. Step in a value, + step out a value, report suspended/dead. Substrate shared by stack-switching coroutines and hand-coded state machines. - **event substrate** — pollable events (`xco_event_t`) with a @@ -41,7 +41,7 @@ Bottom-up; each layer is a thin abstraction over the one below. waitlists. - **No clocks.** The host passes `now` into `xco_rt_run`; timers are driven by a pluggable source (in-tree pairing heap). -- **One-waiter invariant.** A suspended step is parked on at most one +- **One-waiter invariant.** A suspended machine is parked on at most one event. Multi-wait is composed in the event graph (build a `select`, park on that).