## Find a copy online

### Links to this item

## Find a copy in the library

Finding libraries that hold this item...

## Details

Genre/Form: | Electronic books |
---|---|

Additional Physical Format: | Print version: Pierce, Benjamin C. Types and programming languages. Cambridge, Mass. : MIT Press, 2002 (DLC) 2001044428 (OCoLC)47705787 |

Material Type: | Document, Internet resource |

Document Type: | Internet Resource, Computer File |

All Authors / Contributors: |
Benjamin C Pierce |

ISBN: | 058544269X 9780585442693 0262256819 9780262256810 |

OCLC Number: | 51958338 |

Description: | 1 online resource (xxi, 623 pages) : illustrations |

Contents: | 1. Introduction -- 2. Mathematical preliminaries -- [pt]. 1. Untyped systems -- 3. Untyped arithmetic expressions -- 4. An ML implementation of arithmetic expressions -- 5. The untyped Lambda-calculus -- 6. Nameless representation of terms -- 7. An ML implementation of the Lambda-calculus -- [pt]. 2. Simple types -- 8. Typed arithmetic expressions -- 9. Simply typed Lambda-calculus -- 10. An ML implementation of simple types -- 11. Simple extensions -- 12. Normalization -- 13. References -- 14. Exceptions -- [pt]. 3. Subtyping -- 15. Subtyping -- 16. Metatheory of subtyping -- 17. An ML implementation of subtyping -- 18. Case study : imperative objects -- 19. Case study : featherweight Java -- [pt]. 4. Recursive types -- 20. Recursive types -- 21. Metatheory of recursive types -- [pt.]. 5. Polymorphism -- 22. Type reconstruction -- 23. Universal types -- 24. Existential types -- 25. An ML implementation of system F -- 26. Bounded quantification -- 27. Case study : imperative objects, redux -- 28. Metatheory of bounded quantification -- [pt]. 6. Higher-order systems -- 29. Type operators and kinding -- 30. Higher-order polymorphism -- 31. Higher-order subtyping. |

Responsibility: | Benjamin C. Pierce. |

### Abstract:

A type system is a syntactic method for automatically checking the absence of certain erroneous behaviors by classifying program phrases according to the kinds of values they compute. The study of type systems--and of programming languages from a type-theoretic perspective -- -has important applications in software engineering, language design, high-performance compilers, and security. This text provides a comprehensive introduction both to type systems in computer science and to the basic theory of programming languages. The approach is pragmatic and operational; each new concept is motivated by programming examples and the more theoretical sections are driven by the needs of implementations. Each chapter is accompanied by numerous exercises and solutions, as well as a running implementation, available via the Web. Dependencies between chapters are explicitly identified, allowing readers to choose a variety of paths through the material. The core topics include the untyped lambda-calculus, simple type systems, type reconstruction, universal and existential polymorphism, subtyping, bounded quantification, recursive types, kinds, and type operators. Extended case studies develop a variety of approaches to modeling the features of object-oriented languages.

## Reviews

*User-contributed reviews*

Add a review and share your thoughts with other readers.
Be the first.

Add a review and share your thoughts with other readers.
Be the first.

## Tags

Add tags for "Types and programming languages".
Be the first.

## Similar Items

### Related Subjects:(5)

- Programming languages (Electronic computers)
- Langages de programmation.
- COMPUTERS -- Programming Languages -- General.
- Programmeertalen.
- Linguagem de programação (textos avançados)

### User lists with this item (2)

- Things I Recommend(2 items)
by zhimingshen updated 2014-01-11
- logic books(3 items)
by JoshCason updated 2012-01-02