Since Go has channels, I was wondering why the standard library doesn't appear to have been designed to use them for IO as well.
There are reader and writer types for that instead but what would be the problem with using channels?
A function could return a channel of byte slices (assuming single-byte, or even single-bit returns are too inefficient) and take in a channel for cancellation requests and a channel for error reporting.
-The curious Go novice.