Futamura Projections
summary
Explains the Futamura projections: a partial evaluator specialized on an interpreter yields a compiled program (first projection), specializing the specializer yields a compiler (second/third projections). Describes a real-world stack: GraalVM/Truffle implements the idea, hosts a JavaScript interpreter whose generated compiler claims performance competitive with V8, runs Ruby in production, and uses Sulong for LLVM bitcode — notes LLVMGo integration currently fails so Go support is incomplete.
AI-written summary · about
chapters (4)
related talks
46mDr. Futamura and the Projection Machine: From Interpreters to Compilers
59mSupercompilation, Partial Evaluation, Futamura Projections and How GraalVM Will Save the World
01h 01mA partial history of partial evaluation
09mCompilers for nothing, executables for free!
16mCompiling Symbolic Execution with Staging and Algebraic Effects
53mUnveiling the Mysteries of GraalVM's Least Understood Component
28mTruffle
37mWhat Is This GraalVM Thing?
