There is no pre-defined map function for asynchronous computations. Perhaps because it really depends on how you want to evaluate the two computations.
If you want to run them sequentially, you can use:
let finalFuture = async {
let! v0 = expr0
let! v1 = expr1
return v0 + v1 }
If you want to run them in parallel, you can use Async.Parallel or Async.StartChild. For example:
let finalFuture = async {
let! v0Started = Async.StartChild(expr0)
let! v1Started = Async.StartChild(expr1)
let! v0 = v0Started
let! v1 = v1Started
return v0 + v1 }
In both cases, it would be quite easy to change the code to take a function rather than calling + directly, so you should be able to use the two snippets to define your own map2 function.