Find a copy in the library
Finding libraries that hold this item...
Details
| Document Type: | Book |
|---|---|
| All Authors / Contributors: |
David A Schmidt |
| ISBN: | 0262193493 9780262193498 026269171X 9780262691710 |
| OCLC Number: | 29024695 |
| Description: | xiv, 367 p. : ill. ; 24 cm. |
| Contents: | 1. The Programming Language Core. 1.1. A Core Imperative Language. 1.2. Typing Rules. 1.3. Induction and Recursion. 1.4. Unicity of Typing. 1.5. The Typing Rules Define the Language. 1.6. The Semantics of the Core Language. 1.7. Soundness of the Typing Rules. 1.8. Operational Properties of the Semantics. 1.9. The Design of a Language Core -- 2. The Abstraction Principle. 2.1. Expression Abstractions. 2.2. The Semantics of Abstractions. 2.3. Soundness of the Typing Rules for Abstractions. 2.4. Lazy Evaluation and the Copy Rule. 2.5. Eager Evaluation. 2.6. Semantics of Lazy and Eager Evaluation. 2.7. Other Standard Abstractions. 2.8. Recursively Defined Abstractions. 2.9. Variable Declarations. 2.10. Semantics of Variables. 2.11. Type-Structure Abstractions. 2.12. Semantics of Type Structures. 2.13. Declaration Abstractions. 2.14. The Abstraction Principle Is a Record Introduction Principle -- 3. The Parameterization and Correspondence Principles. 3.1. Expression Parameters. |
| Series Title: | Foundations of computing. |
| Responsibility: | David A. Schmidt. |
Abstract:
The text is unique in its tutorial presentation of higher-order lambda calculus and intuitionistic type theory. The latter in particular reveals that a programming language is a logic in which its typing system defines the propositions of the logic and its well-typed programs constitute the proofs of the propositions. The Structure of Typed Programming Languages is designed for use in a first or second course on principles of programming languages. It assumes a basic knowledge of programming languages and mathematics equivalent to a course based on books such as Friedman, Wand, and Haynes's Essentials of Programming Languages. As Schmidt covers both the syntax and the semantics of programming languages, his text provides a perfect precursor to a more formal presentation of programming language semantics such as Gunter's Semantics of Programming Languages.
Reviews
