Skip to main content

Module loader

Module loader 

Source
Expand description

Carregador: AST → runtime (formas, reviews e bloco main).

Equivalente Rust do loader.py + contract.py da Etapa 1: carrega o programa no engine e valida referências contra o REGISTRO do FXP (sensor/ator registrados, unidade compatível com a grandeza — FORMAL §3/§6). As cláusulas estruturais já são erros de compilação do parser (vbl-lang).

load NÃO exige registro válido (o runtime lida com falhas de I/O por §4.7 — sensor ausente nunca dispara regra); validate devolve os diagnósticos de registro para o check do CLI.

Structs§

LoadDiag
Diagnóstico de carga (referências contra o registro do FXP).

Functions§

load
Carrega o programa no engine (formas na ordem de declaração, regras na ordem declarada, bloco main interpretado). Devolve o interpretador do main (vazio se o programa não tiver main).
runtime_form
Converte a declaração de forma para a forma runtime (criação em now).
validate
Valida referências do programa contra o registro do FXP. Devolve apenas diagnósticos de REGISTRO (os estruturais são do parser).