Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
Encapsulation and inheritance in object-oriented programming languages
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Hierarchical correctness proofs for distributed algorithms
PODC '87 Proceedings of the sixth annual ACM Symposium on Principles of distributed computing
Fine-grained mobility in the Emerald system
ACM Transactions on Computer Systems (TOCS)
Distributed programming in Argus
Communications of the ACM
Communications of the ACM
ACM Transactions on Computer Systems (TOCS)
Implementing fault-tolerant services using the state machine approach: a tutorial
ACM Computing Surveys (CSUR)
A dynamic network architecture
ACM Transactions on Computer Systems (TOCS)
The process group approach to reliable distributed computing
Communications of the ACM
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
ACM Transactions on Programming Languages and Systems (TOPLAS)
How to securely replicate services
ACM Transactions on Programming Languages and Systems (TOPLAS)
Reasoning about knowledge
Distributed process groups in the V Kernel
ACM Transactions on Computer Systems (TOCS)
From Kansas to Oz: collaborative debugging when a shared world breaks
Communications of the ACM
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Specification, composition, and automated verification of layered communication protocols
Specification, composition, and automated verification of layered communication protocols
Building adaptive systems using ensemble
Software—Practice & Experience - Special issue on multiprocessor operating systems
The Jini architecture for network-centric computing
Communications of the ACM
Building reliable, high-performance communication systems from components
Proceedings of the seventeenth ACM symposium on Operating systems principles
On Communicating Finite-State Machines
Journal of the ACM (JACM)
Guardians and Actions: Linguistic Support for Robust, Distributed Programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Communicating sequential processes
Communications of the ACM
Group communication specifications: a comprehensive study
ACM Computing Surveys (CSUR)
Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
An inheritance-based technique for building simulation proofs incrementally
ACM Transactions on Software Engineering and Methodology (TOSEM)
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Globe: A Wide-Area Distributed System
IEEE Concurrency
Specifications and Proofs for Ensemble Layers
TACAS '99 Proceedings of the 5th International Conference on Tools and Algorithms for Construction and Analysis of Systems
Distributed Asynchronous Collections: Abstractions for Publish/Subscribe Interaction
ECOOP '00 Proceedings of the 14th European Conference on Object-Oriented Programming
Conversation specification: a new approach to design and analysis of e-service composition
WWW '03 Proceedings of the 12th international conference on World Wide Web
Distributed ML: Abstractions for Efficient and Fault-Tolerant Programming
Distributed ML: Abstractions for Efficient and Fault-Tolerant Programming
Appia: A Flexible Protocol Kernel Supporting Multiple Coordinated Channels
ICDCS '01 Proceedings of the The 21st International Conference on Distributed Computing Systems
Enhancing Jini with Group Communication
ICDCSW '01 Proceedings of the 21st International Conference on Distributed Computing Systems
Distributed Programming with Typed Events
IEEE Software
Towards Safe Distributed Application Development
Proceedings of the 26th International Conference on Software Engineering
An implementation of reliable group communication based on the peer-to-peer network JXTA
AICCSA '05 Proceedings of the ACS/IEEE 2005 International Conference on Computer Systems and Applications
Using the strategy design pattern to compose reliable distributed protocols
COOTS'97 Proceedings of the 3rd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 3
Quicksilver Scalable Multicast (QSM)
NCA '08 Proceedings of the 2008 Seventh IEEE International Symposium on Network Computing and Applications
Self-replicating objects for multicore platforms
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
Kevlar: a flexible infrastructure for wide-area collaborative applications
Proceedings of the ACM/IFIP/USENIX 11th International Conference on Middleware
Proceedings of the 6th ACM International Conference on Distributed Event-Based Systems
Message-passing concurrency for scalable, stateful, reconfigurable middleware
Proceedings of the 13th International Middleware Conference
Hi-index | 0.00 |
A component revolution is underway, bringing developers improved productivity and opportunities for code reuse. However, whereas existing tools work well for builders of desktop applications and client-server structured systems, support for other styles of distributed computing has lagged. In this paper, we propose a new programming paradigm and a platform, in which instances of distributed protocols are modeled as "live distributed objects". Live objects can represent both protocols and higher-level components. They look and feel much like ordinary objects, but can maintain shared state and synchronization across multiple machines within a network. Live objects can be composed in a type-safe manner to build sophisticated distributed applications using a simple, intuitive drag and drop interface, very often without writing any code or having to understand the intricacies of the underlying distributed algorithms.