Sets up the base syntax for the lexer and parser. Language constructs such as keywords, operators, operator precedence, etc are defined here.
Used to create tokens from code. Each token can also contain whitespace.
Parses the lua code into an AST (abstract syntax tree).
An optional step which traverses the AST and runs type checking on it.
uses nattlua/definitions/index.nlua for its base types
Emits the lua code ready to be executed along with runtime.lua
Algebraic types in library form that the analyzer uses.
Includes the base type definitions