Figure 14 — Three Dispatch Styles

The same CALL instruction resolves to three different dispatch styles depending on the abstraction's configuration. The caller's interface is identical in all cases — only the resolution mechanism changes. This gives abstraction authors full control over the security/performance tradeoff without any change to calling code.

Same Caller, Three Resolutions The caller always executes the same CALL instruction. The abstraction determines how it resolves. Caller Code (Identical) LOAD CR0, [CR15, #SlideRule] CALL CR0, #multiply Style 1: Symbolic Resolver High-Security Dispatch 1 CALL resolves method name 2 Namespace lookup by symbol 3 Resolver validates method 4 mLoad full GT validation 5 Dispatch to resolved entry Characteristics Latency: ~15-20 cycles Method binding: late (runtime) Audit trail: full symbolic log Use Case CapabilityManager, FamilyRegistry, inter-domain security boundaries ~15-20 cycles (most secure) ★ ★ ★ SECURITY | ★ SPEED Style 2: LAMBDA Fast-Path Performance Dispatch 1 CALL resolves method name 2 mLoad: X perm check 3 LAMBDA in-scope apply 4 Machine-status fast path R RETURN via lambdaActive Characteristics Latency: ~3 cycles Method binding: direct (X perm) No stack frame push (2 words) Use Case SlideRule.multiply, Constants, hot-path math, leaf functions ~3 cycles (fastest secure) ★ ★ SECURITY | ★ ★ ★ SPEED Style 3: Compiled Binary Maximum Throughput 1 CALL resolves method name 2 mLoad: E perm check 3 Full CALL frame push 4 Jump to compiled code R RETURN via stack frame Characteristics Latency: ~10-12 cycles Method binding: compiled offset Full stack frame (~30 words) Use Case Safe Turing abstractions, DREAD/DWRITE, compute-heavy inner loops ~10-12 cycles (fastest raw) ★ SECURITY | ★ ★ SPEED Side-by-Side Comparison Property Symbolic LAMBDA Compiled Caller instruction CALL CR0, #method CALL CR0, #method CALL CR0, #method Resolution symbol → resolver → entry X perm → in-scope apply E perm → jump to binary Gate permission S (SAVE to resolver) X (eXecute / LAMBDA) E (Enter / CALL) Stack frame tag=0, ~30 words tag=1, 2 words tag=0, ~30 words Latency ~15-20 cycles ~3 cycles ~10-12 cycles Domain transition Church → Church Church → Church (in-scope) Church → Turing (hidden) RETURN mechanism Pop full frame (tag=0) lambdaActive fast path Pop full frame (tag=0) Auditability Full symbolic trace Lightweight (no frame) Standard CALL trace Cycle Cost Comparison 0 5 10 15 20 LAMBDA ~3 cycles Compiled ~10-12 cycles Symbolic ~15-20 cycles Abstraction Author Chooses, Caller Doesn't Care The same CALL instruction works with all three styles. The abstraction's namespace entry determines the dispatch.
Symbolic Resolver (high security)
LAMBDA Fast-Path (performance)
Compiled Binary (throughput)