Skip to content

Instantly share code, notes, and snippets.

@nikomatsakis nikomatsakis/ Secret
Last active Nov 19, 2019

What would you like to do?


Interview key folks in async ecosystem publicly, in an effort to

  • grow my own understanding of how the parts in async ecosys fit together
  • clarify public view of async ecosys projects and how they fit together
  • help get a better understanding of “what to do next” but also where we might be headed
  • help to figure out what the role of the Rust project specifically should be here
  • experiment with a new form of Rust discourse


The idea would be to do a recorded discussion, posted to Youtube, with a summary blog post on my blog.

I'm happy to give you a chance to review the video/post before posting. I'm also fine with light edits, but I don't want to do them because I hate video editing. :)

This is meant to be a fun conversation more than anything and certainly not stressful.


Tell me a little bit about yourself and the project(s) you work on.

Can you sketch out to me what you see as the “async stack” and how your project(s) fit in?

The current focus for the Async Foundations WG is to polish async-await. Once we've finished with that, though, we're going to want to pursue new work. Here is a list of possible things we could do. Which of these would be most useful and why? Are there some you would explicitly de-prioritize? (Let's get into specifics!)

  • some form of async fn in trait support
  • support async closures (currently implemented, but with fatal flaws in their design)
  • some form of async destructor support
  • adding IntoFuture as part of the await notation
  • stabilizing the AsyncRead and AsyncWrite traits by moving them to std
  • stabilizing the Stream trait by moving it to std
  • stabilizing other parts of the futures crate, such as
  • bringing the futures crate (or subcrates) to 1.0 (vs moving parts to std)
  • adding some form of for await-like syntax for iterating over streams
  • adding a generator syntax that can be used to write iterators and streams
  • support for global executors to spawn tasks, writing async fn main, etc
  • something else
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.