Programming languages: concepts and constructs - Sethi, Ravi . (Addison Wesley, 1996)