Programming languages an interpreter-based approach - Kamin, Samuel N. (Addison-Wesley, 1990)