Making Async Rust Reliable
Related
More from Tyler Mandry
Framing Rust’s design goals Rust has been kicking around the idea of design goals, under various names, for some time. Design goals are useful because they give everyone making product decisions a common language and set of priorities to appeal to. If done well, they would accumulate the design wisdom of Rust into a concise package and assist RFC...
Last week, Niko Matsakis pointed out a connection to me between for await and something we’ve taken to calling the “buffered streams problem”. This was inconvenient, because I was in the middle of writing a different blog post about what I want Async Rust to look like in a few years, and it challenged some of my assumptions. for await in this...
For just about as long as I’ve been working on async Rust, the topic of scoped tasks has come up. These are async tasks that borrow from their environment, and they would come in handy in a lot of situations. Last year the standard library stabilized thread::scope which allows synchronous threads to do this. You could imagine a similar API, but...
I recently worked out a promising idea with Niko Matsakis and Yoshua Wuyts to solve what I’ll call the “context problem” in Rust. The idea takes inspiration from features in other languages like implicit arguments, effects, and object capabilities. While this is very much at the early stages of development, I’m sharing it here to hopefully get...
My last post, The Rust Organization in 2021, was about how things got done. In this post, I want to talk about what I’d like to see get done: the biggest language, library, and compiler features I’d like to see in 2021. To be sure, this post is more of a “wish list,” in the sense that it may not be possible to do all of it in a year. But these...