you mean like?
await Join(f1(), f2())
Promise1 = f1(); Promise2 = f2(); await Join(Promise1, Promise2);
This is what i hand in mind whit "manually handing of futures". In this case you have to write
Promise1 = f1(); Promise2 = f2(); v1,v2 = await Join(Promise1, Promise2); return v1 + v2
On the other hand, it is necessary becase some of underlying async calls can be order dependend.
for example
await sock.rec(1) == 'A' && await sock.rec(1) == 'B'
This is what i hand in mind whit "manually handing of futures". In this case you have to write
I think this is just too much of synthactic noise.On the other hand, it is necessary becase some of underlying async calls can be order dependend.
for example
checks that first received socket byte is A and second is B. This is clearly order dependant that can't be executed concurrently out of order.