<h2>d notes</h2>

<h3>tooling cookbook</h3>
<ul>
<li>Build [statically-linked binaries] (docker, ldc)</li>
<li><a to MacOS</a> (docker, ldc)</li>
<li>[D on OpenBSD] (gdc)</li>
</ul>

<h3>d basics</h3>
  *  [string type conversions]

<h3>primitive networking servers series</h3>
<ol>
<li>[hello serial]</li>
<li>[echo serial]</li>
<li>[echo socketset]</li>
<li>[brutish chat]</li>
<li>[classy chat]</li>
<li>[echo serial betterC]</li>
<li>[hello TLS]</li>
<li>[clear-then-TLS chat]</li>
UDP server] with
</ol>

<h3>d design</h3>
  *  can't every operator be overloaded?] (low chaos)
  *  [why does SysTime use hecto-nanoseconds?] (range > precision)
  *  [are AA value pointers invalidated by AA mutation?] (they aren't)

<h3>d gotchas</h3>
  *  [enum arrays] probably aren't what you want
  *  [treating a slice as a stack] is surprisingly expensive
  *  How do you [get the address of a field] if the 'field' might be a property function?
  *  [AA .remove() doesn't destroy a value struct]
  *  [stack variable lifetimes can end before their scope] and get collected mid-function by the GC

<h3>d sites</h3>
  *  Week in D]
  *  for the D Programming Language]
  *  Functional garden]