Preprocessor for metaprogramming