Staging in Algorithm Design
Standard informal practice
Example: Sparse matrix multiplication
Example: JIT compilation [e.g. packet filter]
4 Widely applicable
4 Flexible
8 Difficult to automate
8 Hard to maintain during program evolution