Description
RSSA is a IntermediateLanguage that makes representation decisions explicit.
Implementation
Type Checking
The new type language is aimed at expressing bit-level control over layout and associated packing of data representations. There are singleton types that denote constants, other atomic types for things like integers and reals, and arbitrary sum types and sequence (tuple) types. The big change to the type system is that type checking is now based on subtyping, not type equality. So, for example, the singleton type 0xFFFFEEBB whose only inhabitant is the eponymous constant is a subtype of the type Word32.
Details and Notes
SSA is an abbreviation for Static Single Assignment. The RSSA IntermediateLanguage is a variant of SSA.