Expand description
The rule DSL compiler.
Design: spec/09-optimizer.md and spec/10-backend.md. Outside the layer stack: this is
a build dependency, never a runtime one.
Middle-end rewrites and instruction selection patterns are written once, in one language,
and this crate compiles them into the matching code the compiler runs. The same rule text
is what rucc-verify discharges against an SMT solver, which is the point: a rule that is
verified and a rule that is applied cannot drift apart if they are the same text.
§Status
Not implemented. The DSL, its compiler and its verifier are built together in M3,
because spec/10-backend.md says retrofitting verification onto an existing rule set is
the thing not to do.
Constants§
- MILESTONE
- The milestone in
spec/17-milestones.mdthat fills this crate in.