1. A method of providing a distributed implementation of sequential code that includes a future, comprising: creating, by a system having a processor, a plurality of programs based on the sequential code that includes at least one call of a first function associated with the future, wherein at least a first of the plurality of programs is to execute the first function associated with the future, and at least a second of the plurality of programs is to execute a second function in a present section of the sequential code; instrumenting the first function to intercept virtual addresses accessed during run time of the first function, wherein the instrumented first function is included in the first program; instrumenting the second function to intercept virtual addresses accessed during run time of the second function, wherein the instrumented second function is included in the second program; including, by the system, a normalization function in each of the plurality of programs to normalize virtual addresses accessed by the first and second functions; including code in the first program to send, to the second program, normalized addresses produced using the normalization function in the first program; and including code in the second program to send, to the first program, normalized addresses produced using the normalization function in the second program.