Programming Languages: Design and Implementation

For sophomore/junior-level courses in Programming Languages, Comparative Programming Languages, Language Design, and Organization of Programming Languages, in departments of Computer Science and Computer Engineering. Comprehensive in approach, this text explores the major issues in both design and implementation of modern programming languages and provides a basic introduction to the underlying theoretical models on which these languages are based. It focuses on the underlying software and hardware architecture that guides language design, helping students understand why certain decisions are more rational than others in building a program. The emphasis throughout is on fundamental concepts-students learn important ideas, not minor language differences-but several languages are highlighted in sufficient detail to enable students to write programs that demonstrate the relationship between a source program and its execution behavior, without having to purchase separate language reference manuals.