(programming)   A program transformation where a composition of two functions is replaced by in-lining them and combining their bodies. E.g.

	f x = g (h x)	==>	f x = g (2 * x)
	g x = x + 1		f x = 2 * x + 1
	h x = 2 * x
This has the beneficial effect of reducing the number of function calls. It can be especially useful where the intermediate result is a large data structure which can be eliminated.

See also vertical loop combination.

Last updated: 1994-12-05