Practical Foundations for Programming Languages 2nd Edition
Use the Amazon App to scan ISBNs and compare prices.
- FREE return shipping at the end of the semester.
- Access codes and supplements are not guaranteed with rentals.
Fulfillment by Amazon (FBA) is a service we offer sellers that lets them store their products in Amazon's fulfillment centers, and we directly pack, ship, and provide customer service for these products. Something we hope you'll especially enjoy: FBA items qualify for FREE Shipping and .
If you're a seller, Fulfillment by Amazon can help you grow your business. Learn more about the program.
- List Price: $78.99
- Save:$39.88(50%)
Frequently bought together

- +
- +
Customers who viewed this item also viewed
Editorial Reviews
Review
"Harper's book provides a comprehensive treatment of the foundations of computation. He touches on a surprising range of concepts that arise in language design: from simple types to polymorphism to dependent types to modules; from strict to lazy to parallel computation; and from proof techniques for reasoning about extensional behavior to practical, compositional cost models in the presence of garbage collection. More importantly, throughout the book he uses types and the principles of type theory to organize the material and help us discover the orthogonal, composable abstractions that arise naturally not only in the design of programming languages but also in logics and mathematics. This approach helps uncover the fundamental structure lurking inside programming languages of today, and provides a principled approach to the designs for tomorrow."
Greg Morrisett, Cornell University, New York
Review of previous edition:
"Starting with a mathematically simple framework and organizing principles that give type systems a central role, Bob Harper's magnum opus reveals the theory of programming languages as a coherent scientific subject with both breadth and elegance. His enormous experience, pithy views, and great good taste are evident throughout a book that deserves to become a classic."
Andrew Pitts, University of Cambridge
Review of previous edition:
"This book offers an excellent introduction to a wide range of programming language concepts. They are all uniformly and carefully explained, using techniques that are very useful in practice for both analysis and implementation of programming languages. The book is authored by one of the most prominent researchers in type theory for programming languages. The presentation is very effective and based on the author's years of experience teaching the material."
Lars Birkedal, IT University of Copenhagen
Book Description
About the Author
Product details
- Publisher : Cambridge University Press; 2nd edition (April 1, 2016)
- Language : English
- Hardcover : 512 pages
- ISBN-10 : 1107150302
- ISBN-13 : 978-1107150300
- Item Weight : 2.38 pounds
- Dimensions : 7 x 1.3 x 10.4 inches
- Best Sellers Rank: #544,948 in Books (See Top 100 in Books)
- #1,399 in Computer Programming Languages
- #2,530 in Programming Languages (Books)
- Customer Reviews:
About the author

Robert Harper is a professor in the Computer Science Department at Carnegie Mellon University, where he has been a member of faculty since 1988. His main research interest is in the application of type theory to the design and implementation of programming languages and to the development of systems for mechanization of mathematics. Robert Harper is a recipient of the Allen Newell Medal for Research Excellence and the Herbert A. Simon Award for Teaching Excellence at Carnegie Mellon, and is an ACM Fellow.
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonTop reviews from the United States
There was a problem filtering reviews right now. Please try again later.
"Just an appreciation for a rigorous mathematical perspective on things, but no mathematics in particular is required. It would be good to have experience proving theorems about just about anything, just so you're practiced in the art of rigorous thinking.
The book is very dense with information, and very concise in its presentation of ideas. It demands, and rewards, careful study. It cannot be appreciated casually."
As it should be. Take that advice seriously. This is my first exposure to programming language theory; be ready to work. Part I's fairly technical, and even Professor Harper recommends skipping to Part II, skimming Part I and returning to it as necessary. Fully understanding Part I is required to fully appreciate subsequent chapters.
(If you're new to programming in general (as I somewhat am), I highly recommend downloading a copy of his "Programming in Standard ML". If it's meant to be an introductory programming book, it's the best one I've read. Many non-trivial examples are presented throughout, and illustrate how beautiful SML is. It truly is a "high level" language. Many of the code examples have greatly helped me and how I approach programming. He's very detailed when teaching students how to develop, specify, and refine programs. He sometimes goes down incorrect lines of reasoning when programming, shows the mistake(s) made, and WHY they're mistakes. He also teaches WHY specifications are important, and how to CORRECTLY develop them. Examples of this are the GCD-calculating and regular expression matcher programs. After reading this "book", C++, Java, Python and some other languages' crappiness becomes (even more?) obvious. That said, I've never ran into a bad SML book. From the Standard Basis Library through Harper, Paulson, and Ullman, they're all outstanding.)
A "link" to some of its solutions:
httpwwwcscmuedu/~rwh/pfpl/solnspdf
I haven't finished reading the book. I'll periodically update this review. If the quality of the book's consistent throughout, it'll be marvelous; so far, it has been. His style is impeccable, material well presented, and subject matter captivating.
Thank you, Professor Harper. I look forward to subsequent editions and future titles!
That said, this book is very authoritative and reflects professor harper's deep understanding of the area. Perhaps it is meant to be a supplementary textbook for class, so that you could ask questions to TA's and professors if you are confused. Too bad my professor this semester fails to explain anything and 99% of the class is utterly confused. CMU students who wish to take 312, be warned, not every professor can handle this course.








