Principles of programming languages : design, evaluation and implementation - MACLENNAN (Oxford University Press, 1999)