Programming Language Design: Principles and Practices - Hoare, C (2015)