-
Notifications
You must be signed in to change notification settings - Fork 8
Distributor Guide
This guide is for developers who want to port RTICX to new hardware, create a new distribution, or write a new compilation pass.
It assumes you are familiar with the user-facing syntax described in the User Guide and Syntax Reference.
A distributor crate:
- Implements the low-level, target-specific backend traits defined by
rticx-core(and optionally by passes such asrticx-sw-pass). - Registers the compilation passes it wants to use via
RticMacroBuilder. - Exposes the final
#[<distro>::app]proc macro.
The result is a self-contained RTICX distribution that application developers can depend on.
This repository maintains the core framework and a set of reference distributions. New distributions for additional hardware targets are expected to live in their own crates and repositories. They are not merged into this repository.
Porting RTICX to new hardware (a new distribution) or writing a new
compilation pass can be largely automated with the help of an LLM. The
repository ships agent skills encoding the backend trait surface, pipeline
order, and InfoBus API:
-
rticx-create-distribution: scaffolding a new distribution crate. -
rticx-create-pass: scaffolding a new compilation pass. -
rticx-backend: full trait signatures and pipeline reference.
Point your LLM at these (or load them as skills) to speedrun a port or a pass.
- Architecture: how the core, passes, and distributions fit together.
-
Writing Compilation Passes: implementing the
RticPasstrait. -
Writing Distributions: implementing backends and exposing
#[<distro>::app].
-
RticMacroBuilder: the API used by every distribution to assemble the macro pipeline. -
CorePassBackend: the target-specific interface for the core code generation phase. -
RticPass: the interface for syntax-transformation passes. - Backend extension traits: passes such as
rticx-sw-passmay define their own backend traits (e.g.,SwPassBackend) for target-specific details.
Start with Architecture for the big picture.