preprocessor (processor + pre-): program that processes its input data to produce output that is used as input to another program