Programming Books C Java PHP Python Learn more Browse Programming Books
Concepts in Programming Languages and over one million other books are available for Amazon Kindle. Learn more
  • List Price: $94.99
  • Save: $68.22 (72%)
Rented from RentU
To Rent, select Shipping State from options above
Due Date: May 31, 2015
FREE return shipping at the end of the semester. Access codes and supplements are not guaranteed with rentals.
Condition: Used: Good
Comment: Fast shipping from Amazon! Qualifies for Prime Shipping and FREE standard shipping for orders over $35. Overnight, 2 day and International shipping available! Excellent Customer Service.. May not include supplements such as CD, access code or DVD.
Access codes and supplements are not guaranteed with used items.
  • List Price: $94.99
  • Save: $16.59 (17%)
Only 11 left in stock (more on the way).
Ships from and sold by
Gift-wrap available.
Concepts in Programming L... has been added to your Cart
Sell yours for a Gift Card
We'll buy it for $17.54
Learn More
Trade in now
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

Concepts in Programming Languages Hardcover – October 14, 2002

ISBN-13: 978-0521780988 ISBN-10: 0521780985 Edition: 0th

Buy New
Price: $78.40
Price: $26.77
28 New from $44.98 27 Used from $34.18 1 Collectible from $147.63
Rent from Amazon Price New from Used from
"Please retry"
"Please retry"
$44.98 $34.18
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

Hero Quick Promo
Save up to 90% on Textbooks
Rent textbooks, buy textbooks, or get up to 80% back when you sell us your books. Shop Now

Frequently Bought Together

Concepts in Programming Languages + Programming in Scala: A Comprehensive Step-by-Step Guide, 2nd Edition
Price for both: $112.44

One of these items ships sooner than the other.

Buy the selected items together

Shop the New Digital Design Bookstore
Check out the Digital Design Bookstore, a new hub for photographers, art directors, illustrators, web developers, and other creative individuals to find highly rated and highly relevant career resources. Shop books on web development and graphic design, or check out blog posts by authors and thought-leaders in the design industry. Shop now

Product Details

  • Hardcover: 540 pages
  • Publisher: Cambridge University Press (October 14, 2002)
  • Language: English
  • ISBN-10: 0521780985
  • ISBN-13: 978-0521780988
  • Product Dimensions: 7 x 1.2 x 10 inches
  • Shipping Weight: 2.4 pounds (View shipping rates and policies)
  • Average Customer Review: 3.2 out of 5 stars  See all reviews (17 customer reviews)
  • Amazon Best Sellers Rank: #89,199 in Books (See Top 100 in Books)

Editorial Reviews


"The book's three goals are achieved admirably: to discuss the design decisions and tradeoffs of various programming languages, to compare programming languages to deepen understanding, and to present language-specific programming techniques... This is the text one would use in a course on programming languages. Highly recommended." Choice

"It is an excellent book on programming languages, and one that lecturers would enjoy using and students would gain much from having and reading...The exercises are excellent, and range from basic exercises to ones that, if they don't inspire new careers, ought at least generate fine projects. ..I am sure this book will be a success and we will soon see further editions...Indeed it is an inspiring book." LTSN Book Reviews

Book Description

This general textbook on programming languages is designed for undergraduate andbeginning graduate students with some knowledge of basic programming. It teaches the concepts that appear in programming languages, issues that arise in their implementation, and the way that language design affects program development. Each chapter contains an extensive list of homework exercises, tested at several universities.A unique feature of the book is the comprehensive presentation of and comparison between major object-oriented programming languages. Separate chapters examine the history of objects, Simula and Smalltalk, and the prominent languages C++ and Java, giving the reader a solid understanding of the design goals for each of these languages and the central trade-offs between programming expressiveness and implementation efficiency.

Customer Reviews

Doesn't stimulate interest in the subject.
Service told me that this was a publisher problem and not the Kindle software.
Amazon Customer
I read this book out of interest in programming languages theory.

Most Helpful Customer Reviews

27 of 29 people found the following review helpful By Jeffrey Rubard on June 18, 2007
Format: Hardcover
I can't speak to John Mitchell's skill as a lecturer, but some of the complaints here seem to betray a misunderstanding of the purpose of the book: to serve as an introduction to programming language theory, such as can be found in Mitchell's other book *Foundations for Programming Languages*. Mitchell is taking you *out of* the marketable skills zone and into abstract computer science, and he's being pretty nice about it -- the book contains friendly precises of topics like lambda calculus and denotational semantics, which make up the formal core of programming languages. What you will learn has applications in all popular programming languages, even if it's not spelled out in the text.

ML was a good choice as an example language, because it includes many of the features a programming language might have (being both imperative and functional), and furthermore is a serious research language on account of its well-understood semantics and type system. Focusing on it to explain core concepts was not a mistake. Mitchell knows how to do it the other way, too: explanations of the basic elements of object-orientation are parceled out over several notable OO languages, providing a way to compare and contrast how the major OO concepts can be implemented. (I didn't find the final chapter, Apt's summary of Prolog, as helpful: the declarative paradigm is too far removed from what was developed in the rest of the book.)

On account of its relatively gentle explanations and the importance of its concepts for all aspects of CS, this would be a good book for a relative beginner in CS to pick up (provided they can comprehend more than just code). But if you find it too repellent, you're probably not going to be much happier with more advanced treatments: its character just reflects the nature of the field.
2 Comments Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
27 of 33 people found the following review helpful By James Walden on August 9, 2004
Format: Hardcover
While I cannot speak to the quality of Mitchell's course, having only read his book, the earlier criticisms of his use of ML in the book are missing the point of a programming languages class. It's not meant to teach you a random sampling of the 2500+ computer languages that are out there. The idea is to learn about the fundamental paradigms of programming, with a focus on the functional and logical approaches since students are generally already familiar with imperative and object-oriented programming.

ML is one of several good choices for illustrating functional programming, and is actually one of the more popular functional languages (especially the OCaML dialect.) There are many well written books and tutorials on the ML family of languages freely available on the web if you need more examples or detail than he provides in this text. However, the point isn't to learn ML, but rather that once you understand functional programming in any language, you can take advantage of its power, not only in languages like perl and python which offer some limited but nice functional features like map and anonymous functions, but also in imperative languages like C via function pointers and callback techniques.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
5 of 5 people found the following review helpful By Tomas Petricek on April 11, 2010
Format: Hardcover
I really enjoyed reading Concepts in Programming Languages.

The book covers a little bit of everything. It includes an introduction to mathematical foundations such as computability theory and lambda calculus, but I found it quite readable (at the time when I was reading it, which was early during my undergraduate studies). It also includes a tiny bit on the semantics of programming languages (that is, how to describe the meaning formally), which is another important concept from the mathematical foundations of programming languages.

Then it talks about many programming languages and concepts that come from them and are interesting including LISP (which is a basis for Clojure), ML (a basis for Microsoft's F#) but also Simula and Smalltalk (two fundamental OO languages that inspired all modern OO languages, both dynamic such as Ruby and static such as Java). It also talks about C++ and Java (practical OO languages with quite different approach). There are also a few notes about different approaches to concurrency (quite important nowadays!) and logical programming (an iteresting alternative).

It doesn't go into much details and covers wide range of topics, which I consider as a benefit if you want to read it to get a broad overview of the programming language theory. The book actually motivated my current interest in programming languages :-).
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By Native of Neptune on November 10, 2012
Format: Hardcover Verified Purchase
First the disclaimer: This reviewer is neither a computer scientist nor a mathematician, but I strongly enjoy reading those subjects anyway, and can perhaps be more open minded about such a controversial textbook as this one. That said, I am reading this textbook in late fall of 2012, and at this writing am in late chapter 4, reading about denotational semantics. So far, this book has been fairly interesting and not difficult for this reader. Please check the Amazon 'Look Inside' utility for more viewable details about this book.

Here are the complicated basic contents: Preface-ix / PART 1 Functions and Foundations // 1 Introduction-3 / 2 Computability-10 / 3 Lisp: Functions, Recursion, and Lists-18 / 4 Fundamentals-48 // PART 2 Procedures, Types, Memory Management, and Control // 5 The Algol Family and ML-93 / 6 Type Systems and Type Inference-129 / 7 Scope, Functions, and Storage Management-162 / 8 Control in Sequential Languages-204 // PART 3 Modularity, Abstraction, and Object-Oriented Programming // 9 Data Abstraction and Modularity-235 / 10 Concepts in Object-Orientated Languages-277 / 11 History of Objects: Simula and Smalltalk-300 / 12 Objects and Run-Time Efficiency: C++ -337 / 13 Portability and Safety: Java-384 // PART 4 Concurrency and Logic Programming // 14 Concurrent and Distributed Programming-431 / 15 The Logic Programming Paradigm and Prolog-475 // Appendix A Additional Programming Examples-509 / Glossary-521 / Index-525

As I survey this book, it does appear in a rather strange order of subjects, but as a mathy person, its somewhat mathematical approach is welcome. For example, section 4.2 summarizing lambda calculus was one of the more clear treatments of that arcane formalism I've seen.
Read more ›
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Recent Customer Reviews

More About the Author

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

What Other Items Do Customers Buy After Viewing This Item?