Fundamentals of programming languages (2nd ed.)
Ellis Horowitz · Cumulative Index of Computer Aided Architectural Design · 1984
Includes such topics as variables, expressions, statements, typing scope, procedures, data types, exception handling and concurrency. By understanding these concepts and how they are realized in different programming language, the reader is provided with a framework for understanding future language design and a level of comprehension far greater then one gets by writing different programs in different languages