C-MIX: Specialization of C Programs

C-Mix is a partial evaluator that is able to specialize strictly conforming ISO C programs. C-Mix generates specialized versions of functions, unrolls loops said pre-computes expressions and control constructs that depend on known data only. These transformations are similar to what optimizing compilers do, but since C-Mix takes some of the program's input into account, it can potentially do better. This article gives a bird's-eye view of several aspects of the C-Mix system: how it is used, a few examples of what it can do, eaid some information on how it works.