Under heavy development. This site describes the intended 1.0 language. Current features and performance vary. Development status
Sn50SnThe SnAPI programming language
Snapshot · Oct 24, 2026 · Frozen documentation

Design philosophy

Native control, understandable costs.

Sn is under heavy development. This reference includes the intended 1.0 design; features may be incomplete in the current compiler. Read the status →

The intent

Sn takes inspiration from C++'s useful hardware model while aiming for a more predictable compilation model. Its design favors deterministic parsing and resolution, explicit costs, and a familiar surface syntax.

Systems programming

  • Values live inline unless indirection or allocation is explicit.
  • Allocation and recoverable failure are visible in APIs.
  • Cleanup is deterministic; the language design excludes garbage collection and exceptions.
  • Static dispatch is the default. Virtual and interface boundaries are explicit.

Compilation is a product goal

Fast ordinary edit, build, and run workflows are a central goal. Performance work is ongoing. This site makes no claim that current builds meet all compile-time or runtime performance targets.

A shared compiler path

Ahead-of-time compilation and in-process JIT share the frontend and typed SnIR model, with LLVM as the code-generation backend. Exact platform support depends on the distributed toolchain.

Documentation snapshot: October 24, 2026 About versions ↗
Searching Development · language & standard library