That introduces some other tool (with its own syntax), an extra build step, possible non-composability with other features.
A preprocessor (for good or bad) IS a code generation step.
That introduces some other tool (with its own syntax), an extra build step, possible non-composability with other features.
A preprocessor (for good or bad) IS a code generation step.