The Futamura projections are really cool: partially applying an interpreter gives you a compiler! I'm not really sure what this enables though. You'd get a pretty poor compiler. Is this idea used much? I've occasionally heard it referenced for RPython.