《程序设计语言原理习题解答》一书为学习者提供了深入理解程序设计语言的关键概念和理论的宝贵资源,通过详尽解析各类经典例题,帮助读者掌握编程语言的设计与实现技巧。
Contents
Chapter 1 Preliminaries
1.1 Reasons for Studying Concepts of Programming Languages
1.2 Programming Domains
1.3 Language Evaluation Criteria
1.4 Influences on Language Design
1.5 Language Categories
1.6 Language Design Trade-offs
1.7 Implementation Methods
1.8 Programming Environments
Summary, Review Questions, Problem Set: 34
Chapter 2 Evolution of the Major Programming Languages
2.1 Zuse’s Plankalkül
2.2 Minimal Hardware Programming: Pseudocodes
2.3 The IBM 704 and Fortran
2.4 Functional Programming: LISP
2.5 The First Step Toward Sophistication: ALGOL
2.6 Computerizing Business Records: COBOL
2.7 The Beginnings of Timesharing: BASIC
Interview: Alan Cooper—User Design and Language Design
2.8 Everything for Everybody: PL/I
2.9 Two Early Dynamic Languages: APL and SNOBOL
2.10 The Beginnings of Data Abstraction: SIMULA 67
2.11 Orthogonal Design: ALGOL 68
2.12 Some Early Descendants of the ALGOLs
2.13 Programming Based on Logic: Prolog
2.14 History’s Largest Design Effort: Ada
2.15 Object-Oriented Programming: Smalltalk
2.16 Combining Imperative and Object-Oriented Features: C++
2.17 An Imperative-Based Object-Oriented Language: Java
2.18 Scripting Languages: JavaScript, PHP, and Python
2.19 A C-Based Language for the New Millennium: C#
2.20 Markup/Programming Hybrid Languages
Summary, Bibliographic Notes, Review Questions, Problem Set: 117
Chapter 3 Describing Syntax and Semantics
3.1 Introduction
3.2 The General Problem of Describing Syntax
3.3 Formal Methods of Describing Syntax
3.4 Attribute Grammars
History Note
3.5 Describing the Meanings of Programs: Dynamic Semantics
History Note
Summary, Bibliographic Notes, Review Questions, Problem Set, Programming Exercises
Chapter 4 Lexical and Syntax Analysis
4.1 Introduction
4.2 Lexical Analysis
4.3 The Parsing Problem
4.4 Recursive-Descent Parsing
4.5 Bottom-Up Parsing
Summary, Review Questions, Problem Set, Programming Exercises: 200
...
(Continues with chapters on data types, expressions and assignment statements, 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)
Bibliography
Index