Concepts of Programming Languages - Sebesta, Robert W. (Boston:Addison Wesley, 2002)