Suppose thread/task f does some work, puts values V1, V2, V3, ..., V10 on a channel.
Thread/task g then takes items off the channel and starts processing them.
What are the standard patterns for handling these situations? Does g try to notify f (which is now busy with producing V11) ?
Result<T, E> is nice because it forces us to decide how to handle the error. Are there patterns here when dealing with channels ?