Skip to content

RING-00: the decision core in T27, generating valid Rust #1280

Description

@gHashTag

Part of #1279. Ring 0 — the decision core: everything the Queen decides from numbers already in hand. No clock, no network, no store, no strings.

A draft is already in the tree and generates Rust, but not valid Rust: the backend emits V.a where Rust needs V::a, and a switch used as a function body collapses to an empty match. Working around this by hand-writing Rust is forbidden. Work around it with the subset the backend lowers correctly: comparison with ==, if/else, and returning a qualified name.

The compiler itself belongs to another agent's repository. Do not edit it.

Done when

  • t27c gen-rust rings/T27-00/queen_core.t27 produces Rust that compiles under rustc --crate-type lib with no errors.
  • The module is named: generated Verilog is called queen_core, not unknown.
  • Four decisions are covered: retry, review, merge gate, capacity.
  • No floating point anywhere in the ring.

Boundary

rings/T27-00/queen_core.t27

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions