An introduction to partial evaluation | Synapse