> Just for reference, the main thing that I think we need delivered is the 
> ability to await a FlowVar. You can already poll a FlowVar which allows you 
> to sort of await it in a poor-man's fashion. await (spawn foo()) should Just 
> Work (TM) and work in an efficient manner, i.e. the waiting for the FlowVar 
> should be done in epoll/kqueue/IOCP.

Yeah. We are on the same page. I should clarify:

I was looking through the code for both Channels and FlowVar, and I noticed 
that they are very similar, and both require similar changes to be async 
(basically adding the wait to epoll)

That got me thinking, that semantically, Channels and FlowVar are very similar. 
So why do the work twice? Channels are the more general abstraction, so just 
make those work, and make sugar the for rest.

The async stream rewrite was just me thinking off the top of my head. I haven't 
done as much research on that. I will look into the issues there, but that 
seems like a much lower priority.

As @araq says, I think I just need to write some code now. I just wanted to get 
some buy in before I started anything.

Reply via email to