TDPL

(From Ch. 10, Con­cur­rency)

When it comes to con­cur­rency, we are liv­ing in the prover­bial in­ter­est­ing times more than ever be­fore. In­ter­est­ing times come in the form of a mix of good and bad news that con­tributes to a com­plex land­scape of trade-offs, forces, and trends.

The good news is that den­sity of in­te­gra­tion is still in­creas­ing by Moore's law; with what we know and what we can rea­son­ably pro­ject right now, that trend will con­tinue for at least one more decade af­ter the time of this writ­ing. In­creased minia­tur­iza­tion begets in­creased com­put­ing power den­sity be­cause more tran­sis­tors can be put to work to­gether per area unit. Since com­po­nents are closer to­gether, con­nec­tions are also shorter, which means faster lo­cal in­ter­con­nec­tiv­ity. It's an ef­fi­ciency bo­nanza.

Un­for­tu­nately, there are a num­ber of sen­tences start­ing with "un­for­tu­nately" that curb the en­thu­si­asm around in­creased com­pu­ta­tional den­sity...

[read this chap­ter for free] [Japan­ese]
[Table of Con­tents]

Home > Books > The D Pro­gram­ming Lan­guage


Meet TDPL

The D Pro­gram­ming Lan­guage, dubbed TDPL by its read­ers, is the ul­ti­mate au­thor­i­ta­tive ref­er­ence on D. An­drei has been closely in­volved in the evo­lu­tion of the lan­guage and its stan­dard li­brary since 2006. The book took three years to com­plete and evolved in par­al­lel with the lan­guage it­self.

TDPL has been trans­lated in Ko­reanRuss­ian, and Chi­nese.

Re­sources

Trivia about TDPL

  • The book cover art is a paint­ing by An­drei's sis­ter, Irina Vancea, who is a doc­tor.
  • An­drei car­ried alone every sin­gle as­pect of the book pro­duc­tion, such as cover de­sign, in­te­rior de­sign, fonts, lay­out, copy­right page, in­dex, for­mat­ting, ta­bles, and fig­ures.
  • There was no "man­u­script" stage; An­drei got used to writ­ing and com­pos­ing si­mul­ta­ne­ously.
  • TDPL was con­ceived in La­TeX, ex­clud­ing the cover which was made with in­De­sign. Even the fig­ures in the book are, in fact, La­TeX source code.
  • An­drei turned down a roy­alty rate three times higher from an­other pub­lish­ing house be­cause he wouldn't have suf­fi­cient con­trol over the book pro­duc­tion. The show­stop­per was multi-page ta­bles, which that pub­lisher re­fused to im­ple­ment. TDPL's "cheat sheets" are for­mat­ted as beau­ti­ful and con­ve­nient multi-page ta­bles.
  • The pro­jected book length was 350 pages and the fi­nal length is 492. Still, the book com­pares fa­vor­ably in terms of size with the cor­re­spond­ing books for other pro­gram­ming lan­guages.
  • An­drei's most fre­quent mis­take was to put the word "only" in the wrong place.
  • TDPL's code sam­ples are au­to­mat­i­cally ex­tracted and com­piled to make sure that the book is in sync with the ref­er­ence im­ple­men­ta­tion. There is code in the book's source text that checks state­ments made within but does not ap­pear in print.
  • One day be­fore dead­line, An­drei re­al­ized he for­got to de­scribe the key­word sta­tic. How­ever, the book did in­clude two jokes about sta­tic be­ing overused.