Async Overloading
&gt; When designing an API in Rust which performs IO, you have to make a decision whether you want it to be synchronous, asynchronous, or both.<p>Why must that be true? Why can&#x27;t you write the interface once, and have concurrency be an implementation detail?