Rust — lowering/native-build target, не embedded syntax. Checker сначала разрешает полный Topaz unit, затем emitter генерирует Rust против shipped runtime closure. Artifact можно интегрировать на build boundary без Rust tokens в .tpz.
Контракт и компоненты
Default emission — boxed backend. Native backend специализирует доказанные scalar regions и fallback к boxed. emit --out-dir создаёт cargo-runnable crate; native build вызывает cargo и может запустить результат. Runtime closure поставляется с compiler, отдельная установка Topaz на target не нужна.
Рабочий процесс
Сохраняйте source/API canonical Topaz. Выполните check, сравните run, emit/build и тест artifact с теми же inputs/profile. Rust wrapper — foreign code с отдельным ownership, error, dependency и security review.
Текущая поддержка
Пути boxed и native Rust сравниваются с непосредственным выполнением. Тесты также компилируют созданные crates и проверяют web runtime, арифметику, модули, ошибки и очистку ресурсов.
Границы и ограничения
use crate::, ::, attributes, references, Vec<T>, impl, Rust receivers/closures запрещены в canonical Topaz. v5.6 не обещает source-level Rust FFI, stable generated internals, arbitrary host exception translation или безопасность wrapper только из-за успешной compilation.
Справочник команд
topaz emit main.tpz
topaz emit main.tpz --out-dir generated-rust
topaz build main.tpz --out-dir native-build --run