The thing I hate about Unix socket file descriptor passing is that the transmission queue owns the FDs in flight and keeps them alive (makes refcount cycles possible). Had the sender been required to keep the FD around until received, the transfer could be implemented atomically.https://twitter.com/sortiecat/status/938177116427968514 …
In general seems you can achieve maximal expressive power excluding circular refs via some sort of stratification (ala NF).