Introduction
This specification defines the syntax and semantics of the Larol programming language. Although it may be used as a reference, this document is not intended to serve as an introduction to Larol.
Scope
This document specifies only the Larol language and its runtime. It does not specify adjacent utilities such as language servers, build systems, or frameworks.
Compliance
All behavior and rules described in this document are normative and are required of a compliant implementation, except where explicitly stated otherwise.
- Italicized text is informative and does not impose requirements on an implementation.
- Any behavior or rule explicitly described as optional may be omitted by an implementation.
- Any behavior or rule explicitly described as implementation-defined may vary between implementations. An implementation shall document its choice.
Notation
The grammar in this specification is written in Extended Backus–Naur Form (EBNF), based on ISO/IEC 14977.
Conventions
Every Assertions list is enforced at compile time; a violation of any assertion produces a compile-time error.
A fatal error is a compile-time error after which compilation cannot continue.