Talking head
Ruby Conference 2013

This presentation, by Tom Stuart, is licensed under a Creative Commons Attribution ShareAlike 3.0

Partial evaluation is a powerful tool for timeshifting some aspects of a program's execution from the future into the present. Among other things, it gives us an automatic way to turn a general, abstract program into a faster, more specialized one. This math-free talk uses Ruby to explain how partial evaluation works, how it can be used to make programs go faster, and how it compares to ideas like currying and partial application from the world of functional programming. It then investigates what happens when you run a partial evaluator on itself, and reveals some surprising results about how these techniques can be used to automatically generate compilers instead of writing them from scratch.

Rated: Everyone
Viewed 2,507 times
Tags: There are no tags for this video.