Programming languages : principles and paradigms - Tucker, Allen (McGraw Hill, 2006)