Thank you very much for your thorough review! I integrated your
ideas and comments in the latest version. Some additional
information on what I changed and questions left are below.
On Tuesday, 29 March 2016 at 17:10:33 UTC, jmh530 wrote:
D Basics (fix capitalization?):
The current title is "D's basics". I'm unsure what to fix here..
Page 3, [...] I would change the line
D also allows pointer arithmetic. This is not allowed in code
which is marked as @safe but only in @system code.
to
D allows pointer arithmetic, except in code that is marked as
@safe
Done.
Page 4, This line on const is confusing
[...]
I tried to make this part more precise.
I feel like the static keyword is complicated enough that it
could get its own slide (or multiple). Why not just put the
variable at the top level without static?
Very good idea. I created a new static section in the
multi-threading chapter.
Page 7, the discussion on delegates could be clearer.
Tried to make it more precise here, too. I also moved the section
below classes because it actually is a more advanced topic and
hasn't to
be near 'Functions, part I'.
D Gems:
Page 3, put the code examples on a separate line.
Done. Much more readable that way.
Page 7, I would re-write the last line as
[..]
Done
Page 10, might also mention @safe.
Mentioning now @safe, @system and @trusted.
Page 13, conditionnally is spelled wrong.
Fixed.
I feel like static if with templates could get a whole page by
itself.
Thought so too when initially writing the subsection.. I'll have
another good night's sleep to decide whether I'll actually move
it :-)
Concurrency:
Maybe re-name Multithreading? I wouldn't consider
std.parallelism a way to implement concurrency.
I changed the name. Better fits the topic.
VibeD:
Page 1: Define asynchronous I/O and why it matters. I see a
short explanation near the end of Page 2, but I feel like it
should be brought up to the front. Maybe make that big
paragraph into a list of key vibe-d features and why they
matter.
I followed your suggestion and rewrote the paragraph to include
bullet points. Also I added a line on asynchronous I/O and a
reference to the following page which explains in more detail.