Type Strategy Registry
14 sections
Overview
Eliminate cross-phase drift permanently by creating a single, pure-data crate (ori_registry) that declares the complete behavioral specification of every builtin type — methods, operators, ownership, memory strategy — as const data that all compiler phases consume. No phase hard-codes type knowledge independently. One declaration per fact, one source of truth, structural enforcement via Rust's type system.
Completed
14 sections
Core Data Model Design
86/86 tasks
Crate Scaffolding & Purity Enforcement
63/63 tasks
Primitive Type Definitions (int, float, bool, byte, char)
55/55 tasks
String Type Definition
Define complete TypeDef constant for str including all methods, operators, and ownership annotations
Compound Type Definitions
111/111 tasks
Collection & Wrapper Type Definitions
Define complete TypeDef constants for all generic collection and wrapper types: List, Map, Set, Range, Tuple, Option, Result, Channel
Iterator & DoubleEndedIterator Type Definitions
Complete pure-data TypeDef declarations for Iterator<T> and DoubleEndedIterator<T>, including all adapter/consumer methods, DEI-only gating, and CollectionMethod enum mapping
Query API & Lookup Functions
52/52 tasks
Wire Type Checker (ori_types)
173/173 tasks
Wire Evaluator (ori_eval)
63/63 tasks
Wire ARC & Borrow Pass (ori_arc)
69/69 tasks
Wire LLVM Backend (ori_llvm) — OpStrategy Dispatch & Builtin Simplification
95/95 tasks
Migrate ori_ir & Legacy Consolidation
95/95 tasks
Enforcement Tests, Testing Matrix & Exit Criteria
190/190 tasks