Programming Language Theory 9781774696521, 9781774694374

142 24 6MB

English Pages 248 Year 2023

Report DMCA / Copyright

DOWNLOAD FILE

Programming Language Theory
 9781774696521, 9781774694374

Table of contents :
Cover
Title Page
Copyright
ABOUT THE AUTHOR
TABLE OF CONTENTS
List of Figures
List of Tables
List of Abbreviations
Preface
Chapter 1 Introduction to the Theory of Programming Language
1.1. Introduction
1.2. Inductive Definitions
1.3. Languages
1.4. Three Ways to Define the Semantics of a Language
1.5. Non-Termination
1.6. Programming Domains
1.7. Language Evaluation Criteria
References
Chapter 2 Evaluation of Major Programming Languages
2.1. Introduction
2.2. Zuse’s Plankalkül
2.3. Pseudocodes
2.4. IBM 704 and Fortran
2.5. Functional Programming: LISP
2.6. Computerizing Business Records
2.7. The Early Stages of Timesharing
2.8. Two Initial Dynamic Languages: Snobol and APL
2.9. Object-Oriented Programming: Smalltalk
2.10. Merging Imperative and Object-Oriented Characteristics
2.11. An Imperative-Centered Object-Oriented Language: Java
2.12. Markup-Programming Hybrid Languages
2.13. Scripting Languages
References
Chapter 3 The Language PCF
3.1. Introduction
3.2. A Functional Language: PCF
3.3. Small-Step Operational Semantics for PCF
3.4. Reduction Strategies
3.5. Big-Step Operational Semantics for PCF
3.6. Evaluation of PCF Programs
References
Chapter 4 Describing Syntax and Semantics
4.1. Introduction
4.2. The General Problem of Describing Syntax
4.3. Formal Methods of Describing Syntax
4.4. Attribute Grammars
4.5. Describing the Meanings of Programs
References
Chapter 5 Lexical and Syntax Analysis
5.1. Introduction
5.2. Lexical Analysis
5.3. The Parsing Problem
5.4. Recursive-Descent Parsing
5.5. Bottom-Up Parsing
5.6. Summary
References
Chapter 6 Names, Bindings, and Scopes
6.1. Introduction
6.2. Names
6.3. Variables
6.4. The Concept of Binding
6.5. Scope
References
Chapter 7 Data Types
7.1. Introduction
7.2. Primitive Data Types
7.3. Character String Types
References
Chapter 8 Support for Object-Oriented Programming
8.1. Introduction
8.2. Object-Oriented Programming
8.3. Design Issues for Object-Oriented Languages
8.4. Support for Object-Oriented Programming in Specific Languages
References
Index
Back Cover

Polecaj historie