or
Sign in to turn on 1-Click ordering.
or
Amazon Prime Free Trial required. Sign up when you check out. Learn More
Sell Back Your Copy
For a $28.40 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Types and Programming Languages
 
 
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Types and Programming Languages [Hardcover]

Benjamin C. Pierce (Author)
4.7 out of 5 stars  See all reviews (7 customer reviews)

List Price: $76.00
Price: $52.22 & this item ships for FREE with Super Saver Shipping. Details
You Save: $23.78 (31%)
  Special Offers Available
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it delivered Monday, January 30? Choose One-Day Shipping at checkout. Details
Textbook Student FREE Two-Day Shipping for Students. Learn more

Formats

Amazon Price New from Used from
Hardcover $52.22  
Paperback --  
Sell Back Your Copy for $28.40
Whether you buy it used on Amazon for $33.95 or somewhere else, you can sell it back through our Book Trade-In Program at the current price of $28.40.
Used Price$33.95
Trade-in Price$28.40
Price after
Trade-in
$5.55

Book Description

0262162091 978-0262162098 February 1, 2002 1

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.


Special Offers and Product Promotions

  • Buy $50 in qualifying physical textbooks, get $5 in Amazon MP3 Credit. Here's how (restrictions apply)

Frequently Bought Together

Types and Programming Languages + Advanced Topics in Types and Programming Languages + Purely Functional Data Structures
Price For All Three: $149.23

Show availability and shipping details

Buy the selected items together
  • In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Advanced Topics in Types and Programming Languages $52.03

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details

  • Purely Functional Data Structures $44.98

    In Stock.
    Ships from and sold by Amazon.com.
    This item ships for FREE with Super Saver Shipping. Details



Editorial Reviews

Review

"Types are the leaven of computer programming; they make it digestible. This excellent book uses types to navigate the rich variety of programming languages, bringing a new kind of unity to their usage, theory, and implementation. Its author writes with the authority of experience in all three of these aspects." Robin Milner, Computer Laboratory, University of Cambridge



"Written by an outstanding researcher, this book is well organized and very clear, spanning both theory and implementation techniques, and reflecting considerable experience in teaching and expertise in the subject."--John Reynolds, School of Computer Science, Carnegie Mellon University



"Types are the leaven of computer programming; they make it digestible. This excellent book uses types to navigate the rich variety of programming languages, bringing a new kind of unity to their usage, theory, and implementation. Its author writes with the authority of experience in all three of these aspects."--Robin Milner, Computer Laboratory, University of Cambridge



"Types and Programming Languages is carefully written with a well-balanced choice of topics. It focusses on pragmatics, with the right level of necessary theory. The exercises in this book range from easy to challenging and provide stimulating material for beginning and advanced readers, both programmers and the more theoretically minded."--Henk Barendregt, Faculty of Science, Mathematics, and Computer Science, University of Nijmegen, The Netherlands



"Over the last two decades type theory has emerged as the central, unifying framework for research in programming languages. But these remarkable advances are not as well-known as they should be. The rapid advance of research on type systems for programming languages has far outpaced its dissemination to the rest of the field. No more. Pierce's book not only provides a comprehensive account of types for programming languages, but it does so in an engagingly elegant and concrete style that places equal emphasis on theoretical foundations and the practical problems of programming. This book will be the definitive reference for many years to come."--Robert Harper, Professor, Computer Science Department, Carnegie Mellon UniversityPlease note: Endorser gives permission to use the final two sentences of the quote as his endorsement, if necessary.

About the Author

Benjamin C. Pierce is Professor of Computer and Information Science at the University of Pennsylvania.

Product Details

  • Reading level: Ages 18 and up
  • Hardcover: 645 pages
  • Publisher: The MIT Press; 1 edition (February 1, 2002)
  • Language: English
  • ISBN-10: 0262162091
  • ISBN-13: 978-0262162098
  • Product Dimensions: 9.4 x 8.1 x 1.4 inches
  • Shipping Weight: 2.9 pounds (View shipping rates and policies)
  • Average Customer Review: 4.7 out of 5 stars  See all reviews (7 customer reviews)
  • Amazon Best Sellers Rank: #91,884 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

 

Customer Reviews

7 Reviews
5 star:
 (5)
4 star:
 (2)
3 star:    (0)
2 star:    (0)
1 star:    (0)
 
 
 
 
 
Average Customer Review
4.7 out of 5 stars (7 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

44 of 47 people found the following review helpful:
5.0 out of 5 stars An accessible yet thorough introduction to type systems, December 29, 2002
By 
Jason M Kinzer (Oklahoma City, OK USA) - See all my reviews
This review is from: Types and Programming Languages (Hardcover)
This text is perhaps the most accessible yet thorough introduction to type systems I've encountered.

On the one hand, it offers excellent grounding: practical motivation is provided, numerous examples illustrate the concepts, and implementations are provided which can be used to typecheck and evaluate these examples. At various points, extended demonstrations of the type systems under consideration are given (e.g. showing how objects may be encoded). The exercises are well constructed and in many cases, accompanied with answers and detailed explanations in the appendix.

On the other hand, it offers an excellent exposition of the material: Pierce provides a lucid account of the static and dynamic semantics (primarily small-step operational) for various lambda calculi. He proceeds in a stepwise fashion via the gradual accretion of features: from first order (simply typed) systems to higher order systems incorporating bounded subtyping and recursion. He also gives attention to the metatheory of these systems (focusing on proofs of progress and preservation, and for systems with subtyping, of decideability). Internally, the text is well organized, with clear dependencies among the chapters, and the bibliography is extensive.

It should be noted that, while reasonably comprehensive, the text is necessarily limited in scope. For example, aside from the discussion on Featherweight Java, systems other than typed lambda calculus variants are not considered. In my opinion, the focus on these (in some sense "low-level") calculi makes foundational issues more apparent, and the linear progression from simple to complex variants lends a pleasant cohesiveness that would have been lost in a more general survey. However, as object/class encodings were discussed at various points, it would have been nice to see a more integrated presentation, in the spirit of the paper Comparing Object Encodings [BCP97].

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


20 of 20 people found the following review helpful:
5.0 out of 5 stars Just right, June 3, 2007
By 
This review is from: Types and Programming Languages (Hardcover)
This is a textbook about programming language theory, somewhat mathematical-- but it's must-read material for anyone who wants to gripe about programming languages cluefully, much less design them.

For me, this book strikes exactly the right balance between theory and practicality. Chapters on the mathematical properties of various tiny programming languages are interleaved with chapters that provide annotated implementations of those languages.

The book will also give you the background (notation and terminology) you'll need to read cutting-edge research papers on programming language theory.

This book contains all the information I was missing. Excellent presentation of the material, well written, great exercises, doesn't go off into lala-land. Highly recommended. Some math background very helpful (you need to know what a mathematical proof is).

Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


8 of 8 people found the following review helpful:
5.0 out of 5 stars Excellent book, April 6, 2008
By 
agentzh (Beijing, China) - See all my reviews
This review is from: Types and Programming Languages (Hardcover)
Writing baby interpreters using OCaml for the funny languages (include lambda calculus!) used in the theoretic chapters is a pretty cool idea and I really like it.

Elementary discrete mathematics and first-order logic are required for grokking the maths materials through out the book though. If you don't have enough patience to deal with math symbols, theorems, and formal proving, then this is not the right book for you ;)

IHMO, this is a highly comprehensible book for introducing lambda-calculus and type theory to readers without much background knowledge in either abstract algebra or theoretic computer science (like me ;)). I've been looking for such a book for long, in fact :)

Besides, this was the very book which directly inspired the birth of Pugs (a Perl 6 interpreter/compiler in Haskell) according to Audrey, the Pugs project's leader.

Highly recommended!
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews





Only search this product's reviews



Inside This Book (learn more)
Browse Sample Pages:
Front Cover | Table of Contents | First Pages | Index | Surprise Me!
Search Inside This Book:


What Other Items Do Customers Buy After Viewing This Item?


Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 
(10)
(5)

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   
Related forums



So You'd Like to...



Look for Similar Items by Category


Look for Similar Items by Subject