D 2021-10-30T19:40:32.327 L d\snotes P 1905370f9b5cec8aa87cceb46c8a168d6ce762bc0dedecf8bf1c8c41425e49bd U admin W 1770

d notes

tooling cookbook

d basics

* [string type conversions]

primitive networking servers series

  1. [hello serial]
  2. [echo serial]
  3. [echo socketset]
  4. [brutish chat]
  5. [classy chat]
  6. [echo serial betterC]
  7. [hello TLS]
  8. [clear-then-TLS chat]
  9. [https://d.minimaltype.com/index.cgi/file?name=net/9/server.d&ci=tip|serial UDP server] with [https://d.minimaltype.com/index.cgi/file?name=net/9/client.d&ci=tip|client]

concurrency series

# [https://d.minimaltype.com/index.cgi/file?name=par/1-spinner/spinner.d&ci=tip|spinner.d]

d design

* [https://forum.dlang.org/post/mailman.283.1631549561.21945.digitalmars-d-learn@puremagic.com|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

d sites

* [http://dpldocs.info/this-week-in-d/Blog.html|This Week in D] * [https://p0nce.github.io/d-idioms/|Idioms for the D Programming Language] * [https://garden.dlang.io/|D Functional garden] Z 86fbc38a3b9da932efa005dac58b164b