Specification

This section of the snail documentation provides a specification for the language. It is divided into several sections:

  • Lexical Structure: describes valid lexemes and tokens in the language.
  • Syntax: presents a formal grammar for the snail language. This section also describes static checks that are performed while validating syntax.
  • Runtime Semantics: describes the execution of snail programs. Rules for dynamically checking types and evaluating expressions are provided.
  • Interchange Formats: describes two serialization formats (SL-LEX and SL-AST), which can be used to save sequences of snail tokens and snail abstract syntax trees, respectively, to disk.

Updated: