Programming language design concepts - Watt, David A (Wiley, 2004)