![]() | |
Types and Programming Languages | |
byBenjamin C. Pierce | ISBN:0262162091 |
The MIT Press 2002 (623 pages) | |
This thorough type-systems reference examines theory, pragmatics, implementation, and more |
![]() | |||
![]() | - | Introduction | |
![]() | - | Mathematical Preliminaries | |
Part I - Untyped Systems | |||
![]() | - | Untyped Arithmetic Expressions | |
![]() | - | An ML Implementation of Arithmetic Expressions | |
![]() | - | The Untyped Lambda-Calculus | |
![]() | - | Nameless Representation of Terms | |
![]() | - | An ML Implementation of the Lambda-Calculus | |
Part II - Simple Types | |||
![]() | - | Typed Arithmetic Expressions | |
![]() | - | Simply Typed Lambda-Calculus | |
![]() | - | An ML Implementation of Simple Types | |
![]() | - | Simple Extensions | |
![]() | - | Normalization | |
![]() | - | References | |
![]() | - | Exceptions | |
Part III - Subtyping | |||
![]() | - | Subtyping | |
![]() | - | Metatheory of Subtyping | |
![]() | - | An ML Implementation of Subtyping | |
![]() | - | Case Study: Imperative Objects | |
![]() | - | Case Study: Featherweight Java | |
Part IV - Recursive Types | |||
![]() | - | Recursive Types | |
![]() | - | Metatheory of Recursive Types | |
Part V - Polymorphism | |||
![]() | - | Type Reconstruction | |
![]() | - | Universal Types | |
![]() | - | Existential Types | |
![]() | - | An ML Implementation of System F | |
![]() | - | Bounded Quantification | |
![]() | - | Case Study: Imperative Objects, Redux | |
![]() | - | Metatheory of Bounded Quantification | |
Part VI - Higher-Order Systems | |||
![]() | - | Type Operators and Kinding | |
![]() | - | Higher-Order Polymorphism | |
![]() | - | Higher-Order Subtyping | |
![]() | - | Case Study: Purely Functional Objects | |
Part VII - Appendices | |||
![]() Appendix A | - | Solutions to Selected Exercises | |
![]() | - | Notational Conventions | |
![]() | |||
![]() | |||
![]() |