Programming languages : design and implementation - Pratt, Terrence W (Prentice Hall, 1996)