Programming languages design and implementation - Pratt, Terrence W & Zelkowitz, Marvin V (Pearson Education Asia, New Delhi, 2001)