On Tuesday, 16 January 2024 at 02:58:03 UTC, Jonathan M Davis
wrote:
On Monday, January 15, 2024 7:25:32 PM MST matheus via
Digitalmars-d-learn wrote:
[...]
[...]
that have since changed or which were never implemented (e.g.
synchronized classes never became a thing; synchronized
functions still exist, but TDPL talks about them being replaced
with synchronized classes and that never happened - and likely
will never happen). There's also an errata for it, but AFAIK,
that just fixes some mistakes it; it doesn't update it. This
wiki entry tries to list some of the differences, but I expect
that it also is rather out-of-date at this point:
https://wiki.dlang.org/Differences_With_TDPL
So, TDPL is a good resource, but you have to take into account
the fact that some of the details are wrong, which you may not
want to do. In that respect, Ali's book would likely work
better:
http://ddili.org/ders/d.en/index.html
It was written more recently, and I'm pretty sure that Ali has
updated it on some basis. I fully expect that there are things
that you'd get out of TDPL that you wouldn't get from Ali's
book, so there's definitely something to said for reading both,
but again, whether that makes sense largely depends on whether
you want to deal with figuring out which parts of TDPL are
still valid.
- Jonathan M Davis
I'll also add that Adam's Book (D Cookbook) and Mike Parkers Book
(Learning D) are both excellent. Mike's is mostly up to date,
minus I think the post-blit function calls. Adam's has lots of
various samples (may be good to read alongside, or otherwise
after Ali or Mike's book once you have a feel for the language).