Meta Engineer?

This is available as Dict\from_async in the www repository.

Returns a new dict with each value awaited in parallel

namespace HH\Lib\Dict;

function from_async<Tk as arraykey, Tv>(
  KeyedTraversable<Tk, Awaitable<Tv>> $awaitables,
): Awaitable<dict<Tk, Tv>>;

Time complexity: O(n * a), where a is the complexity of the synchronous portions of each Awaitable Space complexity: O(n)

The IO operations for each Awaitable will happen in parallel.