Sup

Skip to content

# Sup Language

Sup is an English-like programming language with deterministic semantics and human-friendly errors!!!

- Variables, arithmetic, strings
- Collections (lists, maps)
- Control flow (if/else, while, for each)
- Functions
- Errors and imports
- Transpiler to Python

Get started:

    sup sup-lang/examples/06_mixed.sup

## Safe mode & capabilities

By default, the interpreter blocks potentially dangerous operations. Enable what you need via `SUP_CAPS` (comma-separated), or disable gating with `SUP_UNSAFE=1`.

- Capabilities: `net`, `process`, `fs_write`, `archive`, `sql`

Example (PowerShell):

    $env:SUP_CAPS = "fs_write,net"

## Dev workflow

    pip install -e ./sup-lang pytest ruff mypy
    ruff check sup-lang/sup --fix
    mypy --config-file sup-lang/mypy.ini sup-lang/sup
    pytest -q sup-lang

## See also

- Language specification (v1.0): `spec.md`
- Versioning and stability policy: `versioning.md`

September 10, 2025