skip to content
The structure of typed programming languages
ClosePreview this item

The structure of typed programming languages

Author: David A Schmidt
Publisher: Cambridge, Mass. : MIT Press, ©1994.
Series: Foundations of computing.
Edition/Format:   Book : EnglishView all editions and formats
Summary:
The Structure of Typed Programming Languages describes the fundamental syntactic and semantic features of modern programming languages, carefully spelling out their impacts on language design. Using classical and recent research from lambda calculus and type theory, it presents a rational reconstruction of the Algol-like imperative languages such as Pascal, Ada, and Modula-3, and the higher-order functional languages
Rating:

(not yet rated) 0 with reviews - Be the first.

 

Find a copy in the library

Retrieving... 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 Structure of Typed Programming Languages describes the fundamental syntactic and semantic features of modern programming languages, carefully spelling out their impacts on language design. Using classical and recent research from lambda calculus and type theory, it presents a rational reconstruction of the Algol-like imperative languages such as Pascal, Ada, and Modula-3, and the higher-order functional languages such as Scheme and ML. David Schmidt's text is based on the premise that although few programmers ever actually design a programming language, it is important for them to understand the structuring techniques. His use of these techniques in a reconstruction of existing programming languages and in the design of new ones allows programmers and would-be programmers to see why existing languages are structured the way they are and how new languages can be built using variations on standard themes.

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

User-contributed reviews
Retrieving weRead reviews...
Retrieving GoodReads reviews...
Retrieving Amazon reviews...

Tags

Be the first.
Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Close Window

Please sign in to WorldCat 

Don't have an account? You can easily create a free account.