Foundations of programming languages - Lee, Kent D. (Springer, 2017)