01. Introduction
This section explains what RIF compiles, how its representations are kept separate, and how to install a project that uses Gram as its local parser dependency.
| Guide | Summary |
|---|---|
| 01. What is RIF? | RIF's purpose, terminology, and processing model. |
| 02. Installation | VNMA setup and the expected project layout. |
| 03. Architecture | The path from source definition to pure binary output. |
The Three Main Representations
- RIF definition:
main.rifor a precompiledmain.pack. It describes the target language and its Rules. - Compiled Rule Set: RIF's internal representation of resolved Rules, tokens, tables, and references.
- External MIR: the user program consumed by the Rules, such as
program.asm.
The external MIR is not the same object as the compiled Rule Set. Keeping this boundary makes it possible to compile one target definition against many MIR inputs.