Google, IBM & Meta Certificates — All 10,000+ Courses at 40% Off
One annual plan covers every course and certificate on Coursera. 40% off for a limited time.
Get Full Access
Explore a groundbreaking computer science presentation from POPL 2018 that demonstrates how to collapse multiple layers of interpreters into a single-pass compiler, significantly improving runtime performance. Learn about a novel multi-level lambda calculus featuring staging constructs and stage polymorphism, which allows evaluators to either execute source code as interpreters or generate code as compilers based on runtime parameters. Discover Pink, a meta-circular Lisp-like evaluator that can collapse unlimited levels of self-interpretation, including those with semantic modifications. Examine practical applications including regular expression compilation through interpreters, program transformer construction, and the development of Purple - a reflective language capable of dynamic semantic modifications within a conceptually infinite tower of interpreters. Understand how this research addresses the challenge of compiling and recompiling user programs under user-modified semantics, with demonstrations using Scala and Lisp implementations.