Language reference
Canonical source. This page and its child chapters are now the source of truth for the ScaiCore language. The earlier copy at
docs/SCAICORE-LANGUAGE-DICTIONARY-v0.1.mdin the repo is a historical snapshot kept for archaeological reference; edits should land here.
The language reference is organized as twelve chapters. Read them in order on a first pass — each chapter builds on the previous. Jump to a specific chapter when you need a fact about syntax, types, a block, or an API.
Part I — Reference#
- Lexical rules — characters, tokens, identifiers, literals, comments.
- Syntax fundamentals — block structure, expressions vs statements, operator precedence.
- Type system — primitives, compound types, enums, unions.
- Top-level constructs —
@core,@flow,@transformer,@evaluator,@pipeline,@test. - Core declaration blocks —
@config,@memory,@constraints,@triggers,@llm,@plugins,@instance. - Execution blocks — the fourteen block kinds that make up a flow body.
- Pipeline operators —
|>,|?>,|*>,|~>. - Statements — what's legal inside
@rigidand@debug. - Memory and reference APIs —
memory.*andreference.*at runtime. - Module system — imports, visibility, multi-file flows.
- Standard library — built-in functions, types, and methods.
Part II — Examples#
- Canonical examples — three worked flows from end to end: invoice processor, customer support agent, content pipeline.