Foundations of programming languages: design and implementation - Roosta, Syed H (Thomas Asia, 2003)