## os.rkt and friends - move from quasiquoted to prefab structs - define a prefab struct for every evt? that we want to use - define lowest-level drivers for each prefab struct It feels like those lowest-level drivers are listening for *demand* i.e. they're listening for presence and are then acting to supply such demand. Think about the relationships between presence (both positive and negative), and interfacing to ad-hoc sources and sinks. ### Old, possibly-still-relevant TODOs from os.rkt - is timeout really primitive? If so, isn't presence primitive? - what about metatimeout? - enforce user-mode restrictions ### Abstract out UDP socket creation ### Things to consider doing to os-big-bang.rkt - add contracts on structs used as message types e.g. to catch such as #(192 203 230 10) being used instead of (udp-address "192.203.230.10" 53). - some kind of join-ish construct to make e.g. cname-expansion prettier - have a "terminate" kind of transition for unspawning the transitioning process