MacroSystem is a powerful C++ template system designed to separate data processing from content generation. It can do recursive macro replacing, nested if-else and ifnot-else constructs, and easy importing and exporting of macro files. It has been used to create dynamic Web content, email template systems, and many kinds of preprocessing utilities.