I am wondering about addressing the close() problem, which is that you
can't close() the send side of a bidi fd without closing the receive
side too. This has been pointed out as an issue to me w.r.t. TCP sockets
and such things in which you can't really communicate a zero-byte-write,
as you could in IL.
BSD hacked around this early (as in 25 years ago) with shutdown(), but
what about having close mode that mirrors open mode:
close(fd) becomes close(fd, ORDWR)
then you can close(fd, OWR) and close(fd, ORD)
Is this a terrible idea? (I'm trying to address the lack of technical
discussion mentioned an earlier note :0)
ron