Skip to main content

Crate vize_l3

Crate vize_l3 

Source
Expand description

L3 - the Davinci reactivity IR (codename Impeto): the backend convergence layer for DOM and Vapor.

Experimental: the stage API may change in any alpha release; record intentional breaking changes in the release notes.

Impeto is flat and id-based by design. L2 owns the semantic tree; L3 owns update ordering, effect grouping, and backend decisions that must be shared rather than rediscovered by each emitter. Ordering constraints are explicit op::StateEdge values, regions are named by op::RegionId, and the phase validator rejects unresolved edges, malformed region nesting, and effect scopes that leak.

The crate is no_std + alloc from birth so L3 artifacts can be printed, validated, and replayed on the same portability lane as the earlier Davinci stage libraries.

Placement alternatives (hoist / cache / inline / group) are an explicit overlay on the op graph; see placement.

The operation semantics review point lives in docs/davinci/plan/impeto-ops.md and is kept in sync with op::OpKind plus the Lean reference runner.

Modules§

decision
Shared backend decisions keyed by the owning L2 artifact’s node ids.
dump
The Impeto folio page.
extract
P3-10 try-measure-commit extraction.
jsx
Vue JSX decisions beside the sole original owning L2 File.
lattice
P3-2 reactivity lattice facts for L3.
op
The Impeto op family: flat, id-addressed operations plus explicit state edges.
operand
Value operands stored beside the compact operation graph.
optimize
The L3 optimization pipeline: annotate-placements, then extract-placements, driven by the pass manager.
placement
Explicit placement alternatives for L3 ops (P3-10).
trace
Executable backend-observation traces for Impeto programs.
values_dump
Owned value page paired with the graph-only L3Page view. JSON tuples keep arbitrary authored strings line-atomic without inventing another quoting grammar. Tuple equality is document equality only.
verify
The Impeto phase validator.