LuaRocks.org had a security incident in September 2026. Read the incident report.

Atmos is a programming library for Lua that reconciles Structured Concurrency with Event-Driven Programming

$ luarocks install atmos

Atmos is a programming library for Lua that reconciles Structured Concurrency and Event-Driven Programming, extending classical structured programming with two main functionalities:

* Structured Deterministic Concurrency:
- A `task` primitive with deterministic scheduling provides predictable behavior and safe abortion.
- Structured primitives compose concurrent tasks with lexical scope (e.g., `watching`, `every`, `par_or`).
- A `tasks` container primitive holds attached tasks and control their lifecycle.

* Event Signaling Mechanisms:
- An `await` primitive suspends a task and wait for events.
- An `emit` primitive signals events and awake awaiting tasks.

Atmos is inspired by synchronous programming languages like Céu and Esterel.

Versions

dev-3dev120 days ago0 downloads
0.8-165 days ago12 downloads
0.7-2120 days ago22 downloads
0.6-2209 days ago39 downloads
0.5-1267 days ago37 downloads
0.4-2332 days ago12 downloads
0.4-1333 days ago4 downloads
0.3-31 year ago14 downloads
0.3-21 year ago6 downloads
0.3-11 year ago3 downloads
0.2.1-11 year ago17 downloads
0.2-31 year ago(revision: 2)3 downloads
0.2-21 year ago4 downloads
0.1-11 year ago(revision: 12)20 downloads

Dependencies

f-streams ~> 0.2
lua >= 5.4

Dependency for

atmos-env-iup, atmos-env-pico, atmos-env-sdl, atmos-env-socket, atmos-lang

Manifests