3 ms·
> Rust’s approach is to include the interface to make a task (futures and async/await) into the language and standard library, but lets you import whatever runt
by MuffinFlavored 7y ago
> Rust’s approach is to include the interface to make a task (futures and async/await) into the language and standard library, but lets you import whatever runtime you’d like.
Why is this better than having one official, standardized, optionally importable runtime?
- steveklabnik 7y agoEach point has something different: 1. official - it's not clear how this would be better; that is, the team is not likely to have more expertise in this space than others do 2. standardized - it is standardized, as I said, the interface is in the standard library 3. optionally importable - this is fine, of course, but so are these, so this attribute isn't really anything better or worse. But I don't think this is the biggest strength of this approach, the big strength is that not everyone wants the same thing out of a runtime. The embedded runtimes work very differently than Tokio, for example. As the post talks about, it's assuming you're running on a many core machine; that assumption will not be true on a small embedded device. Others would develop other runtimes for other environments or for other specific needs, and we'd be back to the same state as today.