Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your email address or mobile phone number.

The D Programming Language 1st Edition

4.5 out of 5 stars 62 customer reviews
ISBN-13: 078-5342635362
ISBN-10: 0321635361
Why is ISBN important?
ISBN
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
Trade in your item
Get a $8.81
Gift Card.
Have one to sell? Sell on Amazon
Buy used On clicking this link, a new layer will be open
$20.80 On clicking this link, a new layer will be open
Buy new On clicking this link, a new layer will be open
$34.98 On clicking this link, a new layer will be open
More Buying Choices
30 New from $29.39 27 Used from $20.75
Free Two-Day Shipping for College Students with Amazon Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student


Amazon Book Review
The Amazon Book Review
Discover what to read next through the Amazon Book Review. Learn more.
$34.98 FREE Shipping. Only 4 left in stock (more on the way). Ships from and sold by Amazon.com. Gift-wrap available.
click to open popover

Frequently Bought Together

  • The D Programming Language
  • +
  • D Cookbook
  • +
  • Programming in D: Tutorial and Reference
Total price: $116.47
Buy the selected items together

Editorial Reviews

From the Back Cover

"To the best of my knowledge, D offers an unprecedentedly adroit integration of several powerful programming paradigms: imperative, object-oriented, functional, and meta."
-From the Foreword by Walter Bright
"This is a book by a skilled author describing an interesting programming language. I'm sure you'll find the read rewarding."
-From the Foreword by Scott Meyers D is a programming language built to help programmers address the challenges of modern software development. It does so by fostering modules interconnected through precise interfaces, a federation of tightly integrated programming paradigms, language-enforced thread isolation, modular type safety, an efficient memory model, and more. "The D Programming Language "is an authoritative and comprehensive introduction to D. Reflecting the author's signature style, the writing is casual and conversational, but never at the expense of focus and preAcision. It covers all aspects of the language (such as expressions, statements, types, functions, contracts, and modules), but it is much more than an enumeration of features. Inside the book you will find In-depth explanations, with idiomatic examples, for all language featuresHow feature groups support major programming paradigmsRationale and best-use advice for each major featureDiscussion of cross-cutting issues, such as error handling, contract programming, and concurrencyTables, figures, and "cheat sheets" that serve as a handy quick reference for day-to-day problem solving with D Written for the working programmer, "The D Programming Language "not only introduces the D language-it presents a compendium of good practices and idioms to help both your coding with D and your coding in general.

About the Author

Andrei Alexandrescu, Ph.D., is the author of the award-winning books Modern C++ Design (Addison-Wesley, 2001) and, with Herb Sutter, C++ Coding Standards (Addison-Wesley, 2005). Through his work, Andrei has garnered a solid reputation as a leading innovator in programming languages and methods. Since 2006, he has collaborated closely with Walter Bright—the original designer and implementer of D—on designing and implementing the language and its standard library.
NO_CONTENT_IN_FEATURE


Product Details

  • Paperback: 460 pages
  • Publisher: Addison-Wesley Professional; 1 edition (June 12, 2010)
  • Language: English
  • ISBN-10: 0321635361
  • ISBN-13: 978-0321635365
  • Product Dimensions: 7 x 1 x 9.1 inches
  • Shipping Weight: 1.7 pounds (View shipping rates and policies)
  • Average Customer Review: 4.5 out of 5 stars  See all reviews (62 customer reviews)
  • Amazon Best Sellers Rank: #657,858 in Books (See Top 100 in Books)

Related Media

Customer Reviews

Top Customer Reviews

Format: Paperback
First, a little context. I've been around the D community for a few years, keep a blog about items of interest to D users, maintain an open source D project and, in 2007, coauthored "Learn to Tango with D". Through all of that, the majority of my experience was with D1. I was hesitant, even reluctant, to use version 2 of the language because, in some ways, it is a bit paradigm shift from the first version. Andrei's book has dispelled any doubts I had about moving forward with D2.

D2 melds several different programming paradigms into one whole. One of the most radical differences from existing C-family languages is the concept of 'ranges', which are intended as an improvement over, and replacement for, the more familiar 'iterators' of other languages. Before the book, while ranges were being implemented in the alpha versions of the D2 compiler, some people had trouble wrapping their heads around ranges. Here, Andrei explains them in a way that makes them easy to grok and will have you using them in no time. And it's important that you do understand them as Phobos, D's standard library (which is intentionally not given much coverage in the book) has been reworked around the concept.

Aside from ranges and the more basic features of D which aren't so foreign, you'll also learn about D's interpretation of constness and immutability (D's const and immutable keywords are intended to improve upon the mess that is C++ const), and the D style of concurrent programming. D is poised to slot seamlessly in to the world of multi-core programming, with built-in features that simplify the process for those, like me, who can't think on that scale. Andrei's explanation of concurrency pitfalls and D's solutions should turn a light on for you if you're in the dark about it.
Read more ›
2 Comments 34 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback Verified Purchase
I've been using D regularly for about 2 years. When I heard about this book, I bought it more out of curiosity than anything. I was pleasantly surprised when this book revealed facets of D that I had not been aware of through two years of usage, library writing and forum surfing. Andrei's entertaining yet to-the-point style makes this a pleasant read, and he manages to cover both basic and advanced topics thoroughly yet succinctly.
Comment 24 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback Verified Purchase
This book is one of the things D really needed to launch itself out of obscurity. It thoroughly explains the strengths of the language, why it is a practical language to learn and use, and it walks you through the more complex aspects of the language such as meta programming and concurrency/threading (which is often overlooked). As others have stated, it would be nice to have more real world examples - but then again, I never liked the books that have 5 out of 6 pages completely filled with code. This book is a good introduction to the rich toolset D provides - it's up to you to dig in and get experienced.
Comment 28 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback Vine Customer Review of Free Product ( What's this? )
This is not only the pre-eminent book on the D language, it is also a fascinating read. It actually covers D2, the 2nd generation of the D language.

This is a must-have book for anyone who programs in D or wants more than a cursory understanding of the D language. It is also excellent for any C++ or Java programmer who (like me) would appreciate insights into the how and why of language design.

As an experienced C++ programmer who has also used many other languages from LISP to Java, I was intrigued by D and wanted to learn more. Andei Alexandrescu did not let me down. He not only provides a complete expose on the language, but also offers a remarkably insightful look at how language design choices were made. It was, I might add, a very compelling argument in favor of D. I wish I could switch from C++ today, but only time will tell if D will become well enough established to broadly supplant C++ and/or Java.

D was given birth by Walter Bright, an experienced C++ compiler designer, who wanted to design a better language from the perspective of a compiler writer with a very intricate understanding of the C++ language and its inefficiencies. The end result is a language that is not only more compiler-friendly, but is a joy to program. D is intended to be suitable as systems programming language, as was C++; but also provides the means for simpler code to do more complex tasks. It is quite flexible and supports multiple programming paradigms while remaining high performance.

This book is both entertaining and intellectually stimulating. As I read, I felt that I was thinking along with the author, as if in a close conversation. At times, I felt that reading the book required perceiving the author's mindset to fully grasp what was being said.
Read more ›
Comment 13 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback
If you love programming and are interested in D2, this is the book for you. I picked it up because I think D2 offers a compelling feature set for doing high performance computing while getting some of the productivity gains associated with higher level languages. I have read it cover to cover and keep going back to it as a reference. It's an engaging read and it is packed with really well thought out examples that both explain and entertain. For example, the concurrency chapter is an eye opener, with D2 turning the conventional default shared model on its head, and the discussion of D2's multiple-subtyping (an elegant and safe alternative to multiple inheritance) not only explains the problem and the solution, but also that the groundwork was laid by features first introduced in other languages, such as Java.

As a Java programmer, I find that D2 offers me some of the comforts of home (garbage collection (but with better options for memory management), a similar module structure (package, class, interface) and a similar syntax) while removing constraints and offering many more modern features and different programming paradigms (functional, imperative, object-oriented). It produces native executables and interfaces well with C, which makes it much more suitable for low-level, high performance applications and interfacing with the latest technologies in high performance computing (FPGA, GPU, RDMA, etc.). The language is not without issues, but the pros far outweigh the cons and you have a really smart group of folks behind it, including the creator, Walter Bright, and the author of this book, Andrei Alexandrescu. I highly recommend The D Programming Language.
Comment 15 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse

Most Recent Customer Reviews

Set up an Amazon Giveaway

The D Programming Language
Amazon Giveaway allows you to run promotional giveaways in order to create buzz, reward your audience, and attract new followers and customers. Learn more
This item: The D Programming Language