A distributed approach to the design of applications | Synapse