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