Hacker News new | past | comments | ask | show | jobs | submit login

> 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?




Each 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.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: