Tracing Requirements for Multi-Layered Meta-Programming