Generative Programming And Component Engineering by D. Batory & C. Consel