Thread overview
Good D book
Oct 13, 2012
Jeremy DeHaan
Oct 13, 2012
Nick Sabalausky
Oct 13, 2012
Jonathan M Davis
Oct 13, 2012
Lubos Pintes
Oct 13, 2012
Ali Çehreli
Oct 13, 2012
Jordi Sayol
Oct 13, 2012
H. S. Teoh
Oct 13, 2012
Jeremy DeHaan
October 13, 2012
I've been using D for a few months now, and i love it. It dawned on me that it would be nice to have some books to go over though!

I saw "The D Programming Language" by Andrei Alexandrescu on Amazon, and I almost bought it when I saw it was written in 2010. I know that D is under development, so would this book still be a viable option?

Are there any other books that someone would recommend?

Thanks much!
October 13, 2012
On Sat, 13 Oct 2012 11:29:29 +0200
"Jeremy DeHaan" <dehaan.jeremiah@gmail.com> wrote:

> I've been using D for a few months now, and i love it. It dawned on me that it would be nice to have some books to go over though!
> 
> I saw "The D Programming Language" by Andrei Alexandrescu on Amazon, and I almost bought it when I saw it was written in 2010. I know that D is under development, so would this book still be a viable option?

That book is THE definitive book on D. Highly recommended.

October 13, 2012
On Saturday, October 13, 2012 11:29:29 Jeremy DeHaan wrote:
> I've been using D for a few months now, and i love it. It dawned on me that it would be nice to have some books to go over though!
> 
> I saw "The D Programming Language" by Andrei Alexandrescu on Amazon, and I almost bought it when I saw it was written in 2010. I know that D is under development, so would this book still be a viable option?
> 
> Are there any other books that someone would recommend?
> 
> Thanks much!

That is _the_ D book. It's mostly correct, and what's not should be in the errata:

http://erdani.com/tdpl/errata/

The main exceptions would be a few items which haven't been fully implemented yet (e.g. multiple alias thises per type), but they should be implemented eventually, so the book will become _more_ correct in that regard. TDPL is pretty much intended to be the definitive resource on D. It's the best programming book that I've ever read, and I'd strongly recommend it to anyone learning D. I think that any serious D programmer who doesn't read it is short changing themselves.

The only other option that I'm aware of is this free, online book by Ali Çehreli:

http://ddili.org/ders/d.en/index.html

It was originally written in Turkish, but a lot of it has been translated. I really don't know how good it is though, as I haven't read much of it (though I expect that it's just fine given who the author is). But if you're not willing to shell out the $34 for TDPL or want another reference, there's no question that it's the best that there is.

- Jonathan M Davis
October 13, 2012
Al 13/10/12 11:29, En/na Jeremy DeHaan ha escrit:
> I've been using D for a few months now, and i love it. It dawned on me that it would be nice to have some books to go over though!
> 
> I saw "The D Programming Language" by Andrei Alexandrescu on Amazon, and I almost bought it when I saw it was written in 2010. I know that D is under development, so would this book still be a viable option?
> 
> Are there any other books that someone would recommend?
> 
> Thanks much!
> 

Ali Çehreli wrote a nice book in Turkish to learn D from scratch, that is partially translated to English.

http://ddili.org/ders/d.en/index.html

It's available on-line and as pdf file.

Regards,
-- 
Jordi Sayol

October 13, 2012
So this means there is no chance to obtain the TDPL legally in some accessible format? I mean similar to chapter 1, which is released on dlang.org. For blind, PDF or even paper makes no sense...
Well, PDF sometimes, but rarely.

Dňa 13. 10. 2012 11:40 Jonathan M Davis  wrote / napísal(a):
> On Saturday, October 13, 2012 11:29:29 Jeremy DeHaan wrote:
>> I've been using D for a few months now, and i love it. It dawned
>> on me that it would be nice to have some books to go over though!
>>
>> I saw "The D Programming Language" by Andrei Alexandrescu on
>> Amazon, and I almost bought it when I saw it was written in 2010.
>> I know that D is under development, so would this book still be a
>> viable option?
>>
>> Are there any other books that someone would recommend?
>>
>> Thanks much!
>
> That is _the_ D book. It's mostly correct, and what's not should be in the
> errata:
>
> http://erdani.com/tdpl/errata/
>
> The main exceptions would be a few items which haven't been fully implemented
> yet (e.g. multiple alias thises per type), but they should be implemented
> eventually, so the book will become _more_ correct in that regard. TDPL is
> pretty much intended to be the definitive resource on D. It's the best
> programming book that I've ever read, and I'd strongly recommend it to anyone
> learning D. I think that any serious D programmer who doesn't read it is short
> changing themselves.
>
> The only other option that I'm aware of is this free, online book by Ali
> Çehreli:
>
> http://ddili.org/ders/d.en/index.html
>
> It was originally written in Turkish, but a lot of it has been translated. I
> really don't know how good it is though, as I haven't read much of it (though
> I expect that it's just fine given who the author is). But if you're not
> willing to shell out the $34 for TDPL or want another reference, there's no
> question that it's the best that there is.
>
> - Jonathan M Davis
>

October 13, 2012
On Sat, Oct 13, 2012 at 11:29:29AM +0200, Jeremy DeHaan wrote:
> I've been using D for a few months now, and i love it. It dawned on me that it would be nice to have some books to go over though!
> 
> I saw "The D Programming Language" by Andrei Alexandrescu on Amazon, and I almost bought it when I saw it was written in 2010. I know that D is under development, so would this book still be a viable option?
> 
> Are there any other books that someone would recommend?
[...]

I agree with the other replies: most definitely get Andrei's book (known by its acronym TDPL around these parts). I had been intending to get into D for a while before I found the book in my local bookstore; but it was after I started reading it that I *really* started to grok what D was about.

In short, it's a definite must-read. Even though there are some (small) discrepancies between the book and the current D implementation, the intent is to move in the direction of the book. So you'll be missing out a lot if you pass over it.


T

-- 
Mediocrity has been pushed to extremes.
October 13, 2012
On 10/13/2012 05:42 AM, Lubos Pintes wrote:
> So this means there is no chance to obtain the TDPL legally in some
> accessible format?

My copy of the TDPL says "free online edition with the purchase of this book." It's supposed to be an Safari Online Books.

> For blind, PDF or even paper makes no sense...
> Well, PDF sometimes, but rarely.

I don't know how accessible the Safari edition is.

> I mean similar to chapter 1, which is released on
> dlang.org.

"Concurrency in the D Programming Language", another excellent chapter of TDPL is also freely available:

  http://www.informit.com/articles/printerfriendly.aspx?p=1609144

> Dňa 13. 10. 2012 11:40 Jonathan M Davis wrote / napísal(a):

>> The only other option that I'm aware of is this free, online book by Ali
>> Çehreli:
>>
>> http://ddili.org/ders/d.en/index.html
>>
>> It was originally written in Turkish, but a lot of it has been
>> translated. I
>> really don't know how good it is though, as I haven't read much of it
>> (though
>> I expect that it's just fine given who the author is). But if you're not
>> willing to shell out the $34 for TDPL or want another reference,
>> there's no
>> question that it's the best that there is.

Thank you Jonathan. Here is what I know about that book:

- The book is written for people who are very new to programming. Especially the first chapters would be boring for experienced programmers.

- The book progresses in a style that may be hard to follow for many people: It tries not to use features of D unless they have been introduced in the previous chapters. There are rare exceptions of this rule.

- Parts of the book has been written while I was learning D from a point of view of a C++ programmer. The good news is, most of the chapters that are in English have been greatly revised. (It is so easy to correct mistakes and improve chapters of online material.) One of the things that I still need to get rid of is the hash_t and equals_t aliases. ;)

Ali

October 13, 2012
Thanks, guys!


I will definitely pick up TDPL!

And I have seen the online book by Ali Çehreli, and actually have a copy saved. It is a great source.

Thanks again for all the input!