Programming Books C Java PHP Python Learn more Browse Programming Books
Buy New
  • List Price: $91.95
  • Save: $9.98 (11%)
Only 2 left in stock (more on the way).
Ships from and sold by
Gift-wrap available.
Sell yours for a Gift Card
We'll buy it for $2.63
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

Introduction to Concurrency in Programming Languages (Chapman & Hall/CRC Computational Science) Hardcover – September 28, 2009

ISBN-13: 978-1420072136 ISBN-10: 1420072137 Edition: 0th

Buy New
Price: $81.97
12 New from $77.97 10 Used from $83.74
Rent from Amazon Price New from Used from
"Please retry"
"Please retry"
$77.97 $83.74
Shop the new
New! Introducing the, a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Product Details

  • Series: Chapman & Hall/CRC Computational Science
  • Hardcover: 344 pages
  • Publisher: Chapman and Hall/CRC (September 28, 2009)
  • Language: English
  • ISBN-10: 1420072137
  • ISBN-13: 978-1420072136
  • Product Dimensions: 0.8 x 6.2 x 9.2 inches
  • Shipping Weight: 1.4 pounds (View shipping rates and policies)
  • Average Customer Review: 3.5 out of 5 stars  See all reviews (2 customer reviews)
  • Amazon Best Sellers Rank: #3,086,300 in Books (See Top 100 in Books)

Editorial Reviews


… a clear focus in this book is on keeping the material accessible. The authors succeed at this brilliantly. … if you are just jumping into the world of concurrent programming, or taking a more theoretical look at the approaches we’ve all been taking for granted for the past 20 years in an attempt to make things better, then this book is a great start. The authors present a clear motivation for the relevance of continuing this work, and provide both the historical context and knowledge of present day practice that you’ll need to get off on the right foot. That they manage to do this while keeping the language clear and the text accessible is a tribute to the effort Sottile, Mattson, and Rasmussen put into the creation of the text.
—, October 2010

Sottile, Mattson, and Rasmussen have successfully managed to provide a nice survey of the current state of the art of parallel algorithm design and implementation in this well-written 300-page textbook, suitable for undergraduate computer science students … this concise yet thorough book provides an outstanding introduction to the important field of concurrent programming and the techniques currently employed to design parallel algorithms. It is clearly written, well organized, and cuts to the point … It is an informative read that I highly recommend to those interested in the design and implementation of parallel algorithms.
—Fernando Berzal, Computing Reviews, May 2010

About the Author

Matthew J. Sottile is a research associate and adjunct assistant professor in the Department of Computer and Information Sciences at the University of Oregon. He has a significant publication record in both high performance computing and scientific programming. Dr. Sottile is currently working on research in concurrent programming languages and parallel algorithms for signal and image processing in neuroscience and medical applications.

Timothy G. Mattson is a principal engineer at Intel Corporation. Dr. Mattson’s noteworthy projects include the world’s first TFLOP computer, OpenMP, the first generally programmable TFLOP chip (Intel’s 80 core research chip), OpenCL, and pioneering work on design patterns for parallel programming.

Craig E Rasmussen is a staff member in the Advanced Computing Laboratory at Los Alamos National Laboratory (LANL). Along with extensive publications in computer science, space plasma, and medical physics, Dr. Rasmussen is the principal developer of PetaVision, a massively parallel, spiking neuron model of visual cortex that ran at 1.14 Petaflops on LANL’s Roadrunner computer in 2008.

More About the Authors

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

Customer Reviews

3.5 out of 5 stars
5 star
4 star
3 star
2 star
1 star
See both customer reviews
Share your thoughts with other customers

Most Helpful Customer Reviews

3 of 7 people found the following review helpful By J. Floris on November 12, 2009
Format: Hardcover Verified Purchase
Excellent textbook. Well organized. Well written. Easy to follow. Complete.
But, it deserves a much wider audience than the title suggests.

Whether you are an old dog like me, or new to computing, you NEED to understand concurrency. Want to understand concurrency? Just pick up this book and read it. It is very accessible and very clear. Everything is explained in a way that makes you think: "Of course. That just makes sense."

Highly recommended!
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
1 of 4 people found the following review helpful By Alex Muscar on November 15, 2012
Format: Hardcover
While the book covers a relatively wide range of topics--from basic concurrency concepts like locks, mutexes and semaphores to high level language-integrated approaches--it does so in an overly verbose, redundant and sometimes superficial fashion. As an example, chapters 6 "Historical Context and Evolution of Languages", and 7 "Modern Languages and Concurrency Constructs" have a lot of overlap, chapter 7 being mostly an expanded version of section 6.2. This is only one prominent example, but this tendency towards repeating content can be seen throughout the book. Also, some parts of the book are incredibly verbose, one such example is section 5.1 where the authors dedicate nine pages to explaining why abstraction is good in programming languages. Either the material is poorly organised--one would imagine that a reader interested in the concurrency part of programming languages is familiar with basic issues of language design such as why abstraction is good--or the authors had a page quota which had to be reached. The length of the book could be reduced by a third and no information would be lost. If you are considering this book, my advice is to look for something else.
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