A channel of values of type a. Values can be asynchronously emitstd/async/channel/emit: forall<a> (ch : channel<a>, value : a) -> async ()ed into
a channel, and asynchronously receivestd/async/channel/receive: forall<a> (ch : channel<a>) -> <async,ndet> ad.
Create a new asynchronous channel.
Emit a value asynchronously into a channel.
Internal: Treat do-awaitstd/async/internal/do-await: forall<a> (setup : await-setup<a>, async-scope : async-scope, label : string) -> async-await await-result<a> as no-wait calls, and emit the resumption eventually in the given channel.
Receive (and remove) a value from the channel: returns immediately if a value is available and otherwise waits asynchronously until a value becomes available.
Emit a value asynchronously into a channel such that the current strand continues immediately.
Return immediately if a value is available on the channel and otherwise returns Nothingstd/core/types/Nothing: forall<a> maybe<a>.
Asynchronous channels.
.