Computer Networks
Maude: specification and programming in rewriting logic
Theoretical Computer Science - Rewriting logic and its applications
A Theory of Distributed Objects
A Theory of Distributed Objects
Proceedings of the 2006 conference on Applications, technologies, architectures, and protocols for computer communications
Proceedings of the 5th international conference on Emerging networking experiments and technologies
ACM Transactions on Programming Languages and Systems (TOPLAS)
Asynchronous Components with Futures: Semantics and Proofs in Isabelle/HOL
Electronic Notes in Theoretical Computer Science (ENTCS)
First class futures: specification and implementation of update strategies
Euro-Par 2010 Proceedings of the 2010 conference on Parallel processing
ABS: a core language for abstract behavioral specification
FMCO'10 Proceedings of the 9th international conference on Formal Methods for Components and Objects
Hi-index | 0.00 |
In distributed object systems, it is desirable to enable migration of objects between locations, e.g., in order to support efficient resource allocation. Existing approaches build complex routing infrastructures to handle object-to-object communication, typically on top of IP, using, e.g., message forwarding chains or centralized object location servers. These solutions are costly and problematic in terms of efficiency, overhead, and correctness. We show how location independent routing can be used to implement object overlays with complex messaging behavior in a sound, fully abstract, and efficient way, on top of an abstract network of processing nodes connected point-to-point by asynchronous channels. We consider a distributed object language with futures, essentially lazy return values. Futures are challenging in this context due to the global consistency requirements they impose. The key conclusion is that execution in a decentralized, asynchronous network can preserve the standard, network-oblivious behavior of objects with futures, in the sense of contextual equivalence. To the best of our knowledge, this is the first such result in the literature. We also believe the proposed execution model may be of interest in its own right in the context of large-scale distributed computing.