This section freezes the three distinct cards used by chapter 34. Identical letters in different cards do not identify their syntactic categories or configuration relations.
Untyped Lexa roots
Lexa configurations and contexts are 𝐶=⟨𝑀∣𝐻∣𝐾∣𝐸∣𝑡⟩. Abbreviate the two stored frames by F(𝐸,𝑥,𝑡):=(𝐸,𝗅𝖾𝗍 𝑥=[] 𝗂𝗇 𝑡),H(𝐿,𝑃,𝐿env):=𝗁𝖽𝗅(𝐿,𝑃,𝐿env,[]). Then 𝐾::=𝜖∣𝐾⋅F(𝐸,𝑥,𝑡)∣𝐾⋅H(𝐿,𝑃𝑜,𝐿env). The three characteristic roots are: ⟨𝑀∣𝐻∣𝐾∣𝐸∣𝗅𝖾𝗍 𝑥=𝗁𝖺𝗇𝖽𝗅𝖾 𝑃𝑏 𝗐𝗂𝗍𝗁 𝑃𝑜 𝗎𝗇𝖽𝖾𝗋 𝑣env 𝗂𝗇 𝑡⟩⟶⟨𝑀∣𝐻∣𝐾⋅F(𝐸,𝑥,𝑡)⋅H(𝐿,𝑃𝑜,𝐿env)∣𝐸𝑏∣𝑡𝑏⟩,⟨𝑀∣𝐻∣𝐾⋅H(𝐿,𝑃𝑜,𝐿env)⋅𝐾′∣𝐸∣𝗅𝖾𝗍 𝑥=𝗋𝖺𝗂𝗌𝖾 𝐿 𝑣 𝗂𝗇 𝑡⟩⟶⟨𝑀∣𝐻[𝐿𝑘↦𝖼𝗈𝗇𝗍(𝐾𝑘)]∣𝐾∣𝐸𝑜∣𝑡𝑜⟩,⟨𝑀∣𝐻∣𝐾∣𝐸∣𝗅𝖾𝗍 𝑥=𝗋𝖾𝗌𝗎𝗆𝖾 𝐿𝑘 𝑣 𝗂𝗇 𝑡⟩⟶⟨𝑀∣𝐻[𝐿𝑘↦𝗇𝗌]∣𝐾⋅F(𝐸,𝑥,𝑡)⋅𝐾′∣𝐸′[𝑥′↦𝐸(𝑣)]∣𝑡′⟩. In the first root, 𝐿 is fresh, 𝑀(𝑃𝑏) =𝜆(𝑥env,𝑥hdl).𝑡𝑏, and 𝐸𝑏 =[𝑥env ↦𝐿env,𝑥hdl ↦𝐿]. In the second, 𝐾𝑘=H(𝐿,𝑃𝑜,𝐿env)⋅𝐾′⋅F(𝐸,𝑥,𝑡),𝑀(𝑃𝑜)=𝜆(𝑥env,𝑦,𝑘).𝑡𝑜,𝐸𝑜=[𝑥env↦𝐿env,𝑦↦𝐸(𝑣),𝑘↦𝐿𝑘], and 𝐿𝑘 is fresh. In the third, 𝐻(𝐿𝑘) =𝖼𝗈𝗇𝗍(𝐾′ ⋅(𝐸′,𝗅𝖾𝗍 𝑥′ =[ ] 𝗂𝗇 𝑡′)). The raise factorization is by identity 𝐿; the resume premise requires a continuation cell, not 𝗇𝗌.
Salt interface and selected translation
Salt has configurations ⟨𝑀 ∣𝐻 ∣𝑅⟩, words 𝑤 ::=𝐿 ∣𝑃 ∣𝑖 ∣𝗇𝗌, and the general instruction set in section 34.3. Its selected translation is T𝖫𝖾𝗑𝖺→𝖲𝖺𝗅𝗍(𝗋𝖺𝗂𝗌𝖾 𝑣1 𝑣2)Γ=T𝖫𝖾𝗑𝖺→𝖲𝖺𝗅𝗍(𝑣2)𝑟2Γ;T𝖫𝖾𝗑𝖺→𝖲𝖺𝗅𝗍(𝑣1)𝑟1Γ;𝖼𝖺𝗅𝗅 𝑃𝗋𝖺𝗂𝗌𝖾,T𝖫𝖾𝗑𝖺→𝖲𝖺𝗅𝗍(𝗋𝖾𝗌𝗎𝗆𝖾 𝑣1 𝑣2)Γ=T𝖫𝖾𝗑𝖺→𝖲𝖺𝗅𝗍(𝑣2)𝑟2Γ;T𝖫𝖾𝗑𝖺→𝖲𝖺𝗅𝗍(𝑣1)𝑟1Γ;𝖼𝖺𝗅𝗅 𝑃𝗋𝖾𝗌𝗎𝗆𝖾. The ordinary handle trampoline allocates a stack and pushes 𝑃𝑜 ::𝐿env ::𝐴 ::ℓexch. Raise exchanges the header’s saved pointer with the current stack top and allocates a one-cell resumption that points to the exchanger. Resume first writes 𝗇𝗌 to that cell, exchanges stack pointers, and returns on the reinstated stack.
SL/TL clue interface
The 2025 joint typing-and-translation judgment is Θ∣Δ∣Σ∣Γ⊢𝑡:𝜏⇝𝑡――. A TL clue and call-site metadata are 𝐶=⟨𝑞,𝐹⟩,𝑞::=̂𝑖∣˚𝑖∣∞,H=𝑇0;𝑇;¯ℓ:¯𝐹. When search crosses a call frame it applies 𝗁𝗈𝗉𝗉𝖾𝗋H. The label-parameter case is ℓ𝑖:𝐹↦̂𝑗⟹𝗁𝗈𝗉𝗉𝖾𝗋H(⟨̂𝑖,𝐹⟩)=⟨̂𝑗,𝐹⟩. Capability and capture cases inspect 𝑇 and 𝑇0, respectively. Their premises require a unique label with the requested effect name, or a unique capability index to continue following. Thus the hopper is partial on arbitrary triples but defined on metadata produced by the selected well-typed translation.
Generalised-continuation card
The 𝜆† source has computation types 𝐴!𝐸 and handler types 𝐶 ⇒𝛿𝐷, where 𝛿 ∈{𝖽𝖾𝖾𝗉, †}. Its higher-order CPS target is the untyped two-level calculus with generalised continuation frames ⟨𝜃,⟨𝜒ret,𝜒ops⟩⟩::𝜅. The selected translation roots are C[𝗋𝖾𝗍𝗎𝗋𝗇 𝑉]=𝜆𝜅.𝖺𝗉𝗉 (↓𝜅) C[𝑉],C[𝗁𝖺𝗇𝖽𝗅𝖾𝛿𝑀 𝗐𝗂𝗍𝗁 𝐻]=𝜆𝜅.C[𝑀]@(⟨↑[],C𝛿[𝐻]⟩::𝜅). Deep 𝗋𝖾𝗌 retains the handling frame when captured pure frames are prepended. Shallow 𝗋𝖾𝗌† restores the captured frame stack without reinstalling the capturing handler. Parameterised handlers extend a frame with the current parameter and translate locally to ordinary deep handlers; this is a fourth card, not a silent identification with either resumption root.