KEY BENEFIT: A thorough introduction to the main constructs of contemporary programming languages and the tools needed to critically evaluate existing and future programming languages. KEY TOPICS: Evolution of the Major Programming Languages; Describing Syntax and Semantics; Lexical and Syntax Analysis; Names, Bindings, Type Checking, and Scopes; Data Types; Expressions and Assignment Statements; Statement-Level Control Structures; Subprograms; Implementing Subprograms; Abstract Data Types and Encapsulation Constructs; Support for Object-Oriented Programming; Concurrency; Exception Handling and Event Handling; Functional Programming Languages; Logic Programming Languages MARKET: An ideal reference encapsulating the history and future of programming languages.