Program Realization Strategy¶
Assign how a formal program is turned into running behavior — by ahead-of-time translation to an independent artifact, direct execution by an always-present engine, or an adaptive mixture — and thereby fix when semantic work and its costs are paid.
Core Idea¶
A Program Realization Strategy determines how a formal program becomes running behavior. It assigns translation, decoding, checking, dispatch, and optimization before execution, during execution, or adaptively across both. A compiler translates ahead of time and emits an independent target artifact; an interpreter keeps an engine present at every run and directly enacts the represented program against runtime state; a tiered runtime combines the two by compiling selected hot regions.
The common identity is a realization contract: a well-formed formal program has behavior under language semantics, and an implementation must arrange for a machine to exhibit that behavior. The strategy fixes the artifact boundary, resident machinery, and timing of semantic work, which jointly determine startup cost, recurring cost, optimization opportunity, deployment form, inspectability, and dynamism.
Scope of Application¶
The family transfers inside computing across native and bytecode compilers, tree-walking and bytecode interpreters, query and regular-expression engines, tiered JIT runtimes, hardware-description tools, and DSL implementations. Its roles remain formal program, language semantics, implementation artifact, executor, and preparation/execution boundary.
Clarity¶
The node separates the behavior a program specifies from where an implementation does the work of realizing it. It also prevents “compiled” and “interpreted” from being mistaken for permanent language properties: one language can have several implementations, and one runtime can place different regions on different sides of the boundary.
Manages Complexity¶
The placement of semantic work explains a cluster of consequences at once. Ahead-of-time placement pays preparation cost for global analysis and an independent artifact. Runtime placement preserves live program data and dynamic features while repeating dispatch and requiring the engine. Adaptive placement adds profiling, warmup, memory, and deoptimization in exchange for specializing only the regions that can repay compilation.
Abstract Reasoning¶
Identify the formal program and semantic contract, then locate each implementation operation before or during execution. Remove the implementation machinery after preparation: if the artifact still runs, the strategy crossed the independent-artifact boundary; if the engine must remain and consume the program as data, it did not. If the answer changes by region or over time, the implementation is hybrid.
Knowledge Transfer¶
The family is domain-specific because removing formal programs, language semantics, and programmable executors destroys the mechanism. Operationalization is the cross-domain neighbor only for the spec-to-procedure lowering performed by compilation; it would be false parentage for an interpreter's direct enactment of an already represented program.
Relationships to Other Abstractions¶
Current abstraction Program Realization Strategy Domain-specific
Parents (1) — more general patterns this builds on
-
Program Realization Strategy presupposes Formal System Prime
A Program Realization Strategy presupposes a formal system whose symbols, well-formed programs, and mechanically applicable semantic rules supply the object to be translated or directly enacted.
Children (2) — more specific cases that build on this
-
Compiler Domain-specific is a kind of Program Realization Strategy
Compiler is the Program Realization Strategy species that performs semantic work ahead of execution and emits a target artifact able to run independently of the compiler.
-
Interpreter Domain-specific is a kind of Program Realization Strategy
Interpreter is the Program Realization Strategy species that directly enacts a represented program during every run through a resident engine and emits no independently runnable artifact.
Hierarchy paths (2) — routes to 2 parentless roots
- Program Realization Strategy → Formal System → Formalization → Representation → Abstraction
- Program Realization Strategy → Formal System → Formalization → Transformation → Function (Mapping)
Distinction from Neighbors¶
- Compiler is the ahead-of-time, independent-artifact species.
- Interpreter is the direct-execution, resident-engine species.
- Operationalization is spec-to-procedure lowering, not the common genus.
- Formal System supplies the symbolic and rule-governed substrate the family presupposes.
- State and State Transition is a constituent of Interpreter's runtime loop, not of every realization strategy.
Notes¶
(New domain-specific genus; queued for Claude style harmonization and independent citation review.)