I would like to do something like create two Futures, use whichever returns first in one code path and send the "slow" Future down a different code path.
A use case is, e.g. I have the option to call one of two external endpoints which are "variable speed" and "old reliable". Data from either one is fine, so I'd rather call both and use "whichever comes first" and (maybe also do something with the other output).
I can always just check whether the futures are ready, but is there something cleaner than e.g. just calling Await.ready
in a loop? (And what do people call this pattern?)