> It is basically impossible to provide a "kind" development environment using deep macro trickery.
Unless it's in a language actually designed for meta-programming. Obviously if you are already in a C project this might not be practical, but if you need a lot of it you may just be using the wrong tool for the job.