Promises: linguistic support for efficient asynchronous procedure calls in distributed systems | Synapse