Principles of programming languages : design, evaluation, and implementation / - MacLennan, Bruce J. (Oxford University Press, 1999)