Central Docs
Catálogo Inicio

Estructura de fuentes

El archivo raíz suele llamarse main.rif. Puede declarar objetos del target en cualquier orden; el procesador registra primero configuración, linker, definiciones y soportes, y después resuelve tablas y Rules.

Comentarios y saltos de línea

; comentario RIF
@define mov ; comentario al final

Los saltos de línea son significativos dentro de una Rule:

@rule mov:
-> IDENT
-> emmit 1

No existe una gramática de indentación para Rules.

Declaraciones por alcance

La raíz puede contener @config, @linker, @table, @stack, @SUPPORTS, @ASMVARIANT, @define, @rule y @LOAD.

Un archivo cargado con @LOAD solo puede contener @define, @table, @rule y más @LOAD. Un archivo de variante solo puede contener @define y @rule.

Así una fuente cargada no reemplaza silenciosamente la memoria ni la política del target.

Definiciones

@define mov
@define add

Una definición es una palabra registrada; no reserva slots, no emite bits y no crea un valor runtime.

Rules

@rule mov:
-> IDENT
-> put 0000 0000

Una línea MIR que empieza con mov se despacha a esta Rule.

Stack de tokens

@stack 50

Solo puede existir un @stack. Sus instrucciones save y load trabajan con tokens y es distinto del datastack de valores temporales.