Skip to content

Identifiers

Overview

Identifiers are used to name and reference functions, variables, typedefs and intdefs in Larol.

Syntax

someIdent

SomeOtherIdent

some_cool_ident_with_numbers_123

_this_one_starts_with_a_underscore

Rules

Valid Characters

Identifiers MUST consist of ASCII characters only. They MUST start with an alphabetic character or an underscore, followed by any number of alphanumeric characters or underscores. An identifier which starts with an underscore MUST contain at least one alphanumeric character.

Symbol Definition

A symbol MUST be any named entity in a Larol program that is associated with an identifier. Symbols include functions, variables, struct types, member fields, member functions, intdef constants, and typedef aliases. The compiler MUST maintain a symbol table for each compilation unit containing all symbols declared within it.

Reserved Keywords

The following are reserved keywords and MUST NOT be used as identifiers:

let, function, struct, intdef, typedef, export, import, include, extern, if, else, while, break, continue, return, bool, char, uchar, short, ushort, int, uint, long, ulong, half, float, double, true, false, move, with, read, write, alloc