Language Spec (v1.0.0)

A high-level map of the Sounio specification and how it relates to the compiler.

Language Spec (v1.0.0)

The language specification is the broader model of Sounio, not a guarantee that every feature is equally exposed in the checked public artifact. This page explains how to read it productively without confusing design breadth for immediate support breadth.

Read order that works well

  • Start with the high-level language model and terminology in spec/LANGUAGE_SPECIFICATION.md.
  • Then cross-check the parts you care about against the relevant docs page, current tests, and souc info output.
  • For implementation details, follow the corresponding self-hosted subsystem rather than relying on the spec alone.

Topics the spec helps contextualize

  • Type structure and advanced typing concepts.
  • Effect and handler design.
  • Units, refinements, and epistemic values as language-level ideas.
  • Broader backend and execution-model concepts beyond the current default artifact.

Where to cross-check claims

  • tests/run-pass/ and tests/compile-fail/ for language behavior.
  • artifacts/stdlib/*.json for library and science-lane support.
  • self-hosted/ subsystem directories for current implementation structure.