Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

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.

  1. Italicized text is informative and does not impose requirements on an implementation.
  2. Any behavior or rule explicitly described as optional may be omitted by an implementation.
  3. 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.