Language Guide

Core syntax and semantics, aligned with the current compiler.

Language Guide

This section documents Sounio’s surface language as implemented by souc, with notes when the specification is ahead of the compiler.

Key Differences vs Rust-like Syntax

  • Mutable bindings use var (not let mut)
  • Mutable references use &!T (not &mut T)
  • Effects are declared with with IO, Panic, ... in function signatures

Start Here

Spec vs Implementation

The repository contains:

  • a formal-ish language spec in spec/LANGUAGE_SPECIFICATION.md
  • runnable fixtures under tests/ (best source of truth for “what compiles today”)

Next