Topazdocs
Инструментарий

Интерпретатор и бэкенды

Непосредственное выполнение, нативная сборка, вывод Python и web-цели в инструментарии Topaz.

Backends — implementation paths за единым checked source contract. Interpreter — reference execution; Rust, Python и web artifacts производятся из общего resolved/typed unit, а не отдельных dialects.

Контракт и компоненты

run запускает interpreter. Default Rust lowering использует boxed runtime; --backend native специализирует доказанные scalar islands и fallback при необходимости. Native build компилирует generated Rust через cargo. --target python пишет program.py и topaz_py_rt.py. web создаёт raw-WASM package, web-worker добавляет worker/client glue.

Рабочий процесс

Начните с check, зафиксируйте ожидаемый output через run, затем build target. Generated code — artifact; программы остаются Topaz, imports используют canonical module syntax. Differential tests сравнивают объявленные outputs, faults, diagnostics и projections, не internal layout.

Текущая поддержка

Непосредственное выполнение, Rust и Python совместно тестируются на текущей грамматике и семействах стандартной библиотеки. Raw WASM и web worker служат целями для браузера. Ограничения отдельных целей перечислены на странице состояния инструментария.

Границы и ограничения

Порядок параллельных задач не определён, поэтому программа не должна зависеть от конкретного чередования. Кодеки сжатия сейчас требуют библиотечный путь Rust. Если цель не может сохранить поддерживаемое поведение, сборка должна сообщить ошибку, а не незаметно изменить программу.

Справочник команд

topaz run main.tpz
topaz emit main.tpz --out-dir rust-out
topaz build main.tpz --backend native --out-dir native-out
topaz build main.tpz --target python --out-dir python-out

Связанная документация