Concepts of Programming Languages - Sebesta, Robert,W (Pearson Addison Wesley, 2006)