Foundations of Programming Languages - Lee, Kent D. (Springer International Publishing : Imprint: Springer, 2017)