Goodreads helps you keep track of books you want to read.
Start by marking “Types and Programming Languages” as Want to Read:
Types and Programming Languages
Enlarge cover
Rate this book
Clear rating
Open Preview

Types and Programming Languages

4.26  ·  Rating details ·  515 ratings  ·  17 reviews
A comprehensive introduction to type systems and programming languages.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 ...more
Hardcover, 623 pages
Published January 4th 2002 by MIT Press (first published 2002)
More Details... Edit Details

Friend Reviews

To see what your friends thought of this book, please sign up.

Reader Q&A

To ask other readers questions about Types and Programming Languages, please sign up.

Be the first to ask a question about Types and Programming Languages

Community Reviews

Showing 1-30
Average rating 4.26  · 
Rating details
 ·  515 ratings  ·  17 reviews


More filters
 | 
Sort order
Start your review of Types and Programming Languages
Zhi Han
Jul 07, 2014 rated it it was amazing
One of my most unpleasant experience in grad school is when I has absolutely no idea what his peers are talking about. I frequently found myself in that situation during my years at CMU. Type theory is one of the topics. Why didn’t I just ask them? I did. My friend Oliver once gave me the perfect response: “I cannot afford to spend time on educating you.” In a world full of distractions and useless information, time is very valuable resource. If one wants to learn, he has to spend his own time

Th
...more
Leo Horovitz
After spending years on my shelf and having been partially read at least once before, this book was finally finished! (I don't know why I used the passive form there, it just felt right for some reason)

I'm glad I did finally read it, even though there were parts that were glanced through without too much attention to detail and even though I skipped the exercises that are probably needed to get a more thorough understanding of the material. I read it mostly as a way to get a good overview of the
...more
Sam
May 17, 2007 marked it as to-read
Recommends it for: Any programmer interested in writing their own programming language(s)
Perhaps the best book of its kind for the beginning/intermediate programmer interested in PLT (programming language theory). The book covers the simple untyped lambda calculus and builds on that foundation to many typed lambda calculi. Implementation chapters show the reader how to put the information to good use, providing executable code in the O'Caml language.

As a non-mathematician, programming hobbyist without formal experience or training, I've found this book particularly helpful in follow
...more
Steve
Aug 29, 2007 rated it really liked it
I liked the structure: starting simple, explaining things clearly, and building slowly.

Don't attempt to read this book without at least a basic knowledge of doing proofs in math and higher-order logic. This should cover you: Language, Proof and Logic: Text and CD

As you work on implementing your own type systems, you'll find the detailed metatheory chapters worth revisiting.
...more
Sandy Vanderbleek
Dec 19, 2015 rated it it was amazing
It's awesome. Personally sub-typing and implementing Java wasn't interesting to me but everything else was.
Michel Beloshitsky
Oct 21, 2017 rated it it was amazing
Very good introduction into theory of types. Useful if your dealing with modern software development tools, like Kotlin, Facebook's Flow, Haskell, Typescript.
Damir
Jul 26, 2017 rated it really liked it
This review has been hidden because it contains spoilers. To view it, click here.
Eric Walkingshaw
Aug 26, 2008 rated it it was amazing
Shelves: science
An invaluable reference for programming language theory. Especially useful for those interested in functional languages, which seem to be poorly covered elsewhere. This book works in the opposite direction as most, assuming a functional approach and eventually deriving imperative constructs, rather than the other way around. I like this much better, but it may be tough if you lack the functional background.

One thing I've noticed is that people seem to get hung up over the notation and liberal u
...more
Mark
Excellent. A small note: if (like me) you get bogged down in the proofs, Pierce's Software Foundations may be a better introduction to ideas such as type preservation, progress properties, and induction over terms and type derivations. I wish I'd read that work first. ...more
Juliusz Gonera
Oct 01, 2016 rated it it was amazing
Very clear & accessible intro to programming language theory. Lots of late-night fun to be had here.

Make sure you check out the OCaml code that accompanies it. It provides just enough motivation & examples to keep going through the theory in the actual text.
...more
Scott Wisniewski
Aug 09, 2013 rated it it was amazing
Awesome book, particularly if you like programming languages.

Also, the proof exercises are good at training your brain for combinatorial reasoning. It helps to makes reasoning about programing languages intuitive.

I loved this book.
Andrew
Mar 05, 2009 rated it liked it
A classic in Type Theory, it gives you background in something modern programmers are woefully and shamefully ignorant in.
Jyri-Matti Lähteenmäki
Mar 17, 2014 rated it really liked it
Shelves: dev
I doubt that I would have gotten total understanding even if I hade made the exercises, but still, I got a lot of understanding about type systems and the kind of things there are to consider.
Scott
Aug 28, 2008 rated it it was amazing
Recommends it for: computer scientists
An absolute necessity for anyone wanting to learn the theoretical underpinnings of programming languages.
Sonny Ny
Dec 11, 2008 marked it as to-read
Brian Goetz's favorite CS book - http://www.briangoetz.com/blog/?p=58 ...more
Graydon
Feb 06, 2012 rated it liked it
A canonical tome. If you're writing a type system, read this.
Simeon Mathaba
rated it it was ok
Nov 11, 2015
Konstantin
rated it it was amazing
Jan 03, 2013
Mobolaji
rated it it was amazing
Mar 29, 2018
Sadiq Ullah
rated it really liked it
Sep 27, 2018
Wanglulu
rated it it was amazing
Jul 27, 2016
Thanh Dinh
rated it it was amazing
Nov 21, 2018
Blume
rated it it was amazing
Aug 06, 2016
Bart Massey
rated it really liked it
May 01, 2015
Vladimír
rated it it was amazing
May 10, 2020
Vaibhav Choudhary
rated it liked it
Feb 19, 2015
Nitesh
rated it it was amazing
Feb 14, 2018
John
rated it really liked it
Jun 22, 2013
Mark Wong
rated it really liked it
Oct 22, 2013
Arets  Paeglis
rated it liked it
Aug 10, 2012
« previous 1 3 4 5 6 7 8 9 next »
There are no discussion topics on this book yet. Be the first to start one »

Readers also enjoyed

  • Structure and Interpretation of Computer Programs (MIT Electrical Engineering and Computer Science)
  • Introduction to Algorithms
  • The Pragmatic Programmer: From Journeyman to Master
  • The Little Schemer
  • Purely Functional Data Structures
  • The Mythical Man-Month: Essays on Software Engineering
  • Practical Foundations for Programming Languages
  • Real World Haskell: Code You Can Believe In
  • Compilers: Principles, Techniques, and Tools
  • Hacker's Delight
  • Style: Toward Clarity and Grace
  • Design Patterns: Elements of Reusable Object-Oriented Software
  • The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography
  • Modern C++ Design: Generic Programming and Design Patterns Applied
  • The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary
  • Programming in Scala
  • Naive Set Theory
  • Concrete Mathematics: A Foundation for Computer Science
See similar books…

Goodreads is hiring!

If you like books and love to build cool products, we may be looking for you.
Learn more »

News & Interviews

Summer is a great time to lose yourself in a page-turning mystery. To help you sleuth out a new read, we asked five of the season’s hottest myst...
12 likes · 4 comments
“A type system can be regarded as calculating a kind of static approximation to the run-time behaviours of the terms in a program.” 0 likes
More quotes…