Practical foundations for programming languages - Harper, Robert 1957- (Cambridge University Press, 2016)