D and Programming Theory (Suggestions?)

Granville Barnett granville at gbarnett.org
Sun Oct 16 20:56:32 PDT 2011


On 13/10/2011 06:25, Ali Çehreli wrote:
> On Wed, 12 Oct 2011 21:10:00 +0000, Louis wrote:
>
>> Does anyone know of any good books that talk about how computers work
>> abstractly enough to be a solid cross language foundation?
> [...]
>> There is no "Beginning D" or "D For Dummies" yet.
>
> There is a Turkish D book that targets programming novices:
>
>    http://ddili.org/ders/d/index.html
>
> It starts with the basic concepts and and ends with Parallelization,
> Concurrency, Manual Memory Management, etc. Unfortunately, it doesn't go
> into programming theory or how computers work. It must be seen as some
> information from a craftsperson to new craftspeople.
>
> I am in the process of translating that book to English. This is the
> first time that I am giving a link to a very draft current state of the
> English translation:
>
>    http://ddili.org/ders/d.en/index.html
>
> Contrary to what that page may makes one think, the Exceptions chapter
> has a draft translation as well:
>
>    http://ddili.org/ders/d.en/exceptions.html
>
> And finally the Ranges chapter is a work in progress:
>
>    http://ddili.org/ders/d.en/ranges.html
>
> All of the above is a draft and I haven't "announced" the English version
> yet. Not even here! :) I have to go over the chapters at least five more
> times to make many corrections. Although, since it's a translation, I
> don't think I will change the content much.
>
> Enjoy!
> Ali

There are actually quite a few books that may help you...some more 
formal than others.

For low-level application of ideas you might want to check out SSCLI 
Internals which uses the Rotor open source runtime as its running 
example - http://blogs.tedneward.com/2009/05/27/SSCLI+20+Internals.aspx. 
The material isn't "advanced" but obviously it will help if you can get 
a grounding in the model of how things are laid out first.

For formal language theory there are many books:

- Theories of Programming Languages (http://www.cs.cmu.edu/~jcr/tpl.html)
- Types and Programming Languages (http://www.cis.upenn.edu/~bcpierce/tapl/)

...and countless others of operational, denotational, axiomatic 
semantics etc. (Just do a search.)

The problem you may have is that most of this stuff is the bastion of a 
relative few and much of the literature is defined in terms that those 
few understand well (I'm talking about the non-trivial applications, 
e.g. a denotational semantics for a "complete" language.)

HTH,

GB


More information about the Digitalmars-d-learn mailing list