From meta frameworks and transformations to distributed computing and more
summary
Overview of concrete results and tools: partial evaluation plus systematic specialization and the incrementalization transformation turn high‑level specs into efficient algorithms automatically; generated artifacts include a compiler generator, a synthesizer for incremental program maintenance, and a DistAlgo language with a Python implementation. Examples show exponential Fibonacci becomes linear with memo/caching, factorial variants with better multiplication order, transitive closure with provable time/space bounds, and Paxos-style specs compiled via history variables; some prior engines give incorrect answers while the transformations produce correct, performative code.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 2:27Start simple
- 4:27Compilation
- 6:10Incremental computation
- 10:19Partial evaluation and incremental computation
- 12:33Meta transformations
- 13:24Incremental transformations
- 18:24Example
- 20:10Optimization
- 22:35Incrementalization
- 27:27Recursion
- 45:40Almost all games
- 48:31Recursion with aggregation
- 51:55Double win example
- 54:09Conclusion
related talks
33mA Historical Perspective on Program Transformation and Recent Developments (Invi...
37mA Tour of Program Optimization
20mEquivalence by Canonicalization for Synthesis-Backed Refactoring
19mAn Incremental Algorithm for Algebraic Program Analysis
01h 03mScaling up machine learning without tears (and what do programming languages ha...
39mAsk Me Anything with Alex Aiken
14mAchieving High-Performance the Functional Way - A Functional Pearl on Expressing High...
01h 31m"Thoughts on language evolution"
