I. Foundations
1. Introduction
2. Programming Language Syntax
3. Names, Scopes, Bindings
4. Semantic Analysis
5. Target Machine Architecture
II. Core Issues in Language Design
6. Control Flow
7. Data Types
8. Composite Types
9. Subroutines and Control Abstraction
10. Data Abstraction and Object Orientation
III. Alternative Programming Models
11. Functional Languages
12. Logic Languages
13. Concurrency
14. Scripting Languages
IV. A Closer Look at Implementation
15. Building a Runnable Program
16. Run-time Program Management
17. Code Improvement