//Printing numbers in a range with Loop<> inline void print( int i) { cout << i << " , " ; // one iteration worth of work } Loop<1,20>::eval( print ); // print numbers 1 to 20