d notes
tooling cookbook
- Build statically-linked binaries (docker, ldc)
- Cross-compile to MacOS (docker, ldc)
- D on OpenBSD (gdc)
d basics
primitive networking servers series
- hello serial
- echo serial
- echo socketset
- brutish chat
- classy chat
- echo serial betterC
- hello TLS
- clear-then-TLS chat
- serial UDP server with client
concurrency series
d design
- why 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)
d gotchas
- 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