A partial evaluator, or pre-compiler, for a computer program enables a user
to provide, at suitable places within a program, language constructs which
cause certain expressions within the program to be evaluated at runtime or
at partial evaluation time. These language constructs can be used to
shorten runtime, such as by avoiding unnecessary duplication of code at
runtime.