Types
Fixed-width integers, usize, bool, raw pointers, borrowed views, aggregates, enums, functions, and compatibility types share one canonical identity.
DByte 12.0 · Language
Contract§
Owned String, dynamic Array, collections, allocator protocols, and automatic Drop are deferred.
Mechanics§
Canonical TypeId identity separates integers, usize, pointers, borrowed views, arrays, structs, enums, callables and hosted compatibility types. TargetDataLayout supplies pointer and usize width/alignment without changing target-independent identity.
Validation and failure§
Integer operations require the existing inference rules and width normalization. Pointer conversion is explicit through usize; ptr[T] widens to const_ptr[T], never the reverse.
Evidence and boundary§
Layout inspection and the parity corpus verify that one type has one representation per target across interpreter, VM and native paths.
Start here if the type page feels abstract§
Read BASICS for hosted let/control flow, then LANGUAGE TOUR for canonical v12 examples. The current page is the representation/identity contract, not the tutorial.