Programming Language Pragmatics and over 2 million other books are available for Amazon Kindle . Learn more

Buy New

Sign in to turn on 1-Click ordering.
Buy Used
Used - Good See details
Price: £26.07

Trade in Yours
For a £5.01 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Sorry, this item is not available in
Image not available for
Image not available

Start reading Programming Language Pragmatics on your Kindle in under a minute.

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

Programming Language Pragmatics [Paperback]

Michael L. Scott
3.0 out of 5 stars  See all reviews (2 customer reviews)
RRP: £46.99
Price: £35.64 & FREE Delivery in the UK. Details
You Save: £11.35 (24%)
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
Only 4 left in stock (more on the way).
Dispatched from and sold by Amazon. Gift-wrap available.
Want it Friday, 3 Oct.? Choose Express delivery at checkout. Details


Amazon Price New from Used from
Kindle Edition £33.86  
Paperback £35.64  
Trade In this Item for up to £5.01
Trade in Programming Language Pragmatics for an Amazon Gift Card of up to £5.01, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Learn more

Book Description

1 Mar 2009 0123745144 978-0123745149 3
Programming Language Pragmatics is the most comprehensive programming language textbook available today. Taking the perspective that language design and language implementation are tightly interconnected, and that neither can be fully understood in isolation, this critically acclaimed and bestselling book has been thoroughly updated to cover the most recent developments in programming language design. With a new chapter on run-time program management and expanded coverage of concurrency, this new edition provides both students and professionals alike with a solid understanding of the most important issues driving software development today. * Classic programming foundations text now updated to familiarize students with the languages they are most likely to encounter in the workforce, including including Java 7, C++, C# 3.0, F#, Fortran 2008, Ada 2005, Scheme R6RS, and Perl 6.* New and expanded coverage of concurrency and run-time systems ensures students and professionals understand the most important advances driving software today.* Includes over 800 numbered examples to help the reader quickly cross-reference and access content.

Frequently Bought Together

Programming Language Pragmatics + Engineering a Compiler
Price For Both: £90.63

Buy the selected items together
  • Engineering a Compiler £54.99

Product details

  • Paperback: 944 pages
  • Publisher: Morgan Kaufmann Publishers Inc.; 3 edition (1 Mar 2009)
  • Language: English
  • ISBN-10: 0123745144
  • ISBN-13: 978-0123745149
  • Product Dimensions: 23.1 x 18.8 x 4.1 cm
  • Average Customer Review: 3.0 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Bestsellers Rank: 464,409 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, and more.

Product Description


"This book is a key resource for any computer science student and is certainly faithful to its title - Programming Language Pragmatics. The updated third edition of this popular book delivers the key concepts of programming languages and their implementation in a concise and intuitive way, illustrated with clear explanations and examples. In addition to the coverage of traditional language topics, Scott's book delves into the sometimes obscure, but essential, details of programming artifacts. The descriptions of language theory, along with concrete implementations of how to realise them, are invariably presented in a language-agnostic fashion. And therein lies the strength of this book: whilst the main examples have been updated (with C and Intel x86 replacing Pascal and MIPS), it provides an organisational framework for learning new languages, irrespective of the paradigm. Programming Language Pragmatics provides a more accessible introduction to many of the key topics than the classic Compilers: Principles, Techniques and Tools by Aho et al. (a.k.a. the 'Dragon Book') and provides a deep appreciation of the design and implementation issues of modern languages. The material is aimed at an undergraduate computer science level, but is also suitable for self-study. Topics are often independent of previously presented material, making it easier to pick and choose areas for study. This is also supported by additional in-depth material and advanced discussion topics on the companion CD.. In summary, this new edition provides both students and professionals alike a solid understanding of the most important issues driving software development today - an essential purchase for any serious programmer or computer scientist!"

About the Author

Michael L. Scott is a professor in the University of Rochester's Department of Computer Science, which he chaired from 1996 to 1999. He is the designer of the Lynx distributed programming language and a co-designer of the Charlotte and Psyche parallel operating systems, the Bridge parallel file system, the Cashmere distributed shared memory system, and the MCS mutual exclusion lock. He received his Ph.D. from the University of Wisconsin-Madison in 1985.

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

4 star
3 star
2 star
3.0 out of 5 stars
3.0 out of 5 stars
Most Helpful Customer Reviews
5.0 out of 5 stars Fantastic book. 23 Jun 2013
Format:Paperback|Verified Purchase
This book consistently amazed me with its depth *and* breadth of coverage. The bonus material on the CD is of equal quality with the content in the printed book. The exercises are interesting and enlightening, and the presentation is for the most part very clear and helpful. I would highly recommend this book.

I should make clear that I'm not a programming languages expert or a compiler writer. I came at this book as an inexperienced programmer wanting to understand more deeply the abstraction mechanisms I was taking for granted. I feel like the book as made me a better programmer since it has introduced to me to many new programming techniques than I thought existed, as well as many interesting languages I would never have bothered looking at without reading this book.

On a less technical note, the presentation and typesetting of the book is beautiful. It's an all-round pleasure to read!
Comment | 
Was this review helpful to you?
7 of 19 people found the following review helpful
1.0 out of 5 stars Kindle edition low quality 8 Jun 2012
Format:Kindle Edition|Verified Purchase
On the Kindle,

1) The source code is unindented.
2) The tables and drawings are poorly readable low-quality pictures.

I have seen the pdf version of the 2nd edition - it's a joy to use in comparison.
Was this review helpful to you?
Most Helpful Customer Reviews on (beta) 4.3 out of 5 stars  18 reviews
30 of 32 people found the following review helpful
1.0 out of 5 stars Poor quality kindle version. 26 Nov 2011
By gracamac - Published on
Format:Kindle Edition|Verified Purchase
This review is on the kindle version of the book, and the rating reflects the quality of that particular version. Despite that, the book content is great, and i would recommend getting the hard-copy.

The kindle version is very poorly created. My main issues with it are:
- The index contains no numbers. It is just a list of terms without definitions.
- The example titles (i.e. Example 1.1:....) do not line up with the actual examples. You have to scroll up and down to find them.
- On kindle for PC, the quick contents (available from the left menu) only shows the sections, not the contents. If you want to quickly go to another chapter in the book, you have to go go to the contents section at the start of the book. This is not an issue with kindle software as other books have managed to have better contents.
- Some text as not copied across properly, I see some broken words and formatting issues.
- You cannot copy and paste from this book if you are outside the US. This is a limitation placed on us by the publisher.
- This may be an issue with kindle for PC, or the indexing of the book, but the search feature does not allow for partial matches of words. i.e. a search for scope will not match scopes.
- This is an issue with kindle for PC, and is not factored in my judgement of the book, but I should warn buyers that kindle for PC has a character limit on search (3 characters minimum). This prevents you for searching for uses of operators in programming books.

I don't really have anything positive to say for the kindle version of this book. Because of the above issues I always fall back on a PDF version of an earlier edition of this book that i have. It is essentially a waste of money for me.
16 of 16 people found the following review helpful
5.0 out of 5 stars If you buy the Kindle Edition, you can obtain the missing portions of the book online. 10 Dec 2010
By tom - Published on
Format:Kindle Edition|Verified Purchase
UPDATED 3/2011: I had originally posted the review below, complaining that the Kindle version of Programming Language Pragmatics was a rip-off, because (1) you didn't get the CD that accompanies the print version, and (2) that missing CD includes large portions of the book. In March 2011, the publisher posted a responsive comment providing a link to an on-line copy of the material on the CD. Currently, the url is [...] . Given that the missing parts of the book are now available even if one buys the Kindle version, my original complaints about the book are no longer valid. I've kept the original review below just for context, but please note that I now have only good things to say about the book, which is worth reading in its entirety.

ORIGINAL REVIEW from 12/2010 (NOW SUPERSEDED - see above): Michael L. Scott's Programming Language Pragmatics is an excellent book about programming languages, language design, and compilers. Unfortunately, the Kindle edition simply omits large portions of the book. It's a rip-off. If you want the complete book, stick with the print edition. Here's the problem. Starting with the second edition, and continuing with the third edition, parts of the print edition were moved to a companion CD - for example, parts of chapters 2, 3, and 4, and all of chapter 5, are on the companion CD that accompanies the print edition - in order to keep the print edition from being too thick. Unfortunately, in the Kindle edition, they have neither integrated the companion CD into the text, nor provided you with the CD (or its contents) - you simply don't get those portions of the book at all. This is a rip-off - you are paying just as much for the Kindle edition as you would for the print edition, but not getting the entire book. I was looking forward to reading this on my Kindle, having read prior editions in hardcopy, but once I realized that I didn't get the entire book, I had Amazon refund my money and ordered the print edition.
5 of 5 people found the following review helpful
5.0 out of 5 stars More comfortable to read than 'The dragon book' 23 Aug 2013
By Baggers - Published on
Whilst the dragon book has become pretty much the go-to book for learning about compilers and language implementation, I found this one be much nicer to read.
I find that some texts expect you to be able to instantly grasp a whole new collection of constructs and keep them all in your head as the author connects their importance together. This book (thankfully) takes a bit more time with the reader and so even though the author took more pages to introduce topics I found myself making progress faster with the material.

Another wonderful thing is the author's knowledge across programming languages is fantastic. Along with many of the techniques are discussions of the pros and cons, the languages that have used them and their effect, within a couple of pages you can see ada, prolog, common lisp & haskell.

I'm only a couple of hundred pages in so far but am loving this book.
If you are interested in language design and implementation this is the book you should go for.
5 of 6 people found the following review helpful
5.0 out of 5 stars $250 Book for $40 New? 19 July 2013
By Let's Compare Options Preptorial - Published on
Format:Paperback|Verified Purchase
The authors and publishers here must not have heard that when you write one of the best texts on the market in a subject area, at nearly 1,000 pages, you're supposed to hose students and shoppers with the price! THANK YOU for CARING about our budgets!

As other reviewers have stated, this is NOT a beginner's book, as it assumes you know the basics of programming paradigms and structures. HOWEVER, if you know coding relatively well in at least one language, and understand the basics of compilers and machine-code interfaces, you CAN PROFIT GREATLY from this text with Wiki close at hand. For example, want to explore how name binding and scope differ between imperative and functional? This will give you the answers, but you'll need to re-study the concepts themselves to follow the logic, as the descriptions are both broad ranging and detailed.

We recommend this text to technical libraries along with two others: Engineering a Compiler, Second Edition and Programming Language Processors in Java: Compilers and Interpreters. Why? Because the ACADEMIC approach to this topic is almost always functional (read: Lisp, Scheme, Racket, Clojure, etc.) because those languages, although tough, make great IDE's/SDK's for creating an entire development environment, from machine language to compiler/interpreter, all virtual.

I'm into it and love Lisp, but if you then mention the word "practical" you and I both know that we're not going to be asked to solve a problem in Racket, even though we might model it there! And this text is WAY practical, favoring object orientation as well as concurrent/parallel problems because: that's where the problems ARE today! You can certainly model and solve them in Lisp, but we have to face reality-- companies and customers will want it in C, C++, C# Java, Python, etc. at a minimum.

But given that, this text also has extreme inductive value-- generalizing those language concepts to non specific principles you'll need from the 30,000 foot view in selecting mixed paradigms, stack vs. heap choices, data structure decisions, etc. NOT an easy read, but every page is packed with relevant insights, and is an eye opener about very recent research in numerous interface areas (memory, compiler, queueing, calls, binding strategies, etc.). Recommended at the normal publisher's usurious price of over $200, a MUST have with an author/publisher willing to price this fine a text within reach of those of us on a budget, or the parents of students on a budget. I sure wish other authors/publishers would take a lesson from this title. I kid you not, a similar but dated title from Springer is going for $251 used here on Amazon, and is good, but not nearly as good as this one!

CD NOTE: The publisher's review comments on the "companion CD" even for the third edition, which is incorrect. ALL CD materials for the new/paperback edition have been moved to the elsevierdirect dot com companion site (/ISBN 13). So DO NOT RETURN THIS BOOK BECAUSE YOU THINK THEY FORGOT THE CD! It still talks all about the "companion CD" in the intro and at the end, but you have to read the tiny box at the very bottom of the very last page (911) to see the message that the CD is no longer included! Just didn't want you to think you were ripped off.

Library Picks reviews only for the benefit of Amazon shoppers and has nothing to do with Amazon, the authors, manufacturers or publishers of the items we review. We always buy the items we review for the sake of objectivity, and although we search for gems, are not shy about trashing an item if it's a waste of time or money for Amazon shoppers. If the reviewer identifies herself, her job or her field, it is only as a point of reference to help you gauge the background and any biases.
3 of 3 people found the following review helpful
5.0 out of 5 stars For the seasoned developer 13 Dec 2011
By Deborah Mccain - Published on
Format:Paperback|Verified Purchase
I would highly recommend this book for the seasoned developer. The author has a dry sense of humor in writing (to this very dry topic), and much of the language is lost if the reader does not have a solid foundation in programming languages; which I did not.

When purchased, I started to read, and immediately thought my new career move should be abandoned. However, after purchasing books that are at the beginner level, I am thoroughly enjoying Scott's book, as with each reading, I 'get" more of what he is writing about.

Even beginners should buy this book. Put it in clear view on the bookshelf, and work towards it.
Were these reviews helpful?   Let us know
Search Customer Reviews
Only search this product's reviews

Customer Discussions

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

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

Search Customer Discussions
Search all Amazon discussions

Look for similar items by category