Types and programming languages / Benjamin C. Pierce
Material type:
- 9780262162098
- QA 76.7 .P54 2002

Item type | Current library | Home library | Collection | Call number | Copy number | Status | Date due | Barcode | |
---|---|---|---|---|---|---|---|---|---|
![]() |
National University - Manila | LRC - Graduate Studies General Circulation | Gen. Ed. - CCIT | GC QA 76.7 .P54 2002 (Browse shelf(Opens below)) | c.1 | Available | NULIB000011102 |
Browsing LRC - Graduate Studies shelves, Shelving location: General Circulation, Collection: Gen. Ed. - CCIT Close shelf browser (Hides shelf browser)
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
||
GC QA 76.7 .A38 2005 Advanced topics in types and programming languages / | GC QA 76.7 .B35 2014 Natural language processing with java and lingpipe cookbook / | GC QA 76.7 .H37 2013 c.3 Practical foundations for programming language / | GC QA 76.7 .P54 2002 Types and programming languages / | GC QA 76.7 .S43 2016 c.1 Concepts of programming languages / | GC QA 76.9 .A88 2014 Impossibility results for distributed computing / | GC QA 76.9 .B35 2012 Database design using entity-relationship diagrams / |
Includes bibliographical references and index.
Introduction -- Mathematical Preliminaries -- I Untyped Systems -- An ML Implementation of Arithmetic Expressions -- The Untyped Lambda-Calculus -- Nameless Representation of Terms -- An ML Implementation of the Lambda-Calculus -- Types Arithmetic Expressions -- Simply Typed Lambda-Calculus -- An ML Implementation of Simple Types -- Simple Extensions -- Normalization -- References -- Exceptions -- Subtyping -- Metatheory of Subtyping -- An ML Implementation of Subtyping -- Case Study: Imperative Objects -- Case Study: Featherweight Java -- Case Study: Featherweight Java -- Recursive Types -- Metatheory of Recursive Types -- Polymorphism -- Universal Types -- Existential Types -- An ML Implementation of System F -- Bounded Quantification -- Case Study: Imperative Objects, Redux -- Higher-Order Systems -- Type Operators and Kinding -- Higher-Order Polymorphism -- Higher-Order Subtyping -- Case Study: Purely Functional Objects.
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.
There are no comments on this title.