Results 1 - 10
of
14
Programming with Live Distributed Objects 1
"... Abstract. Modern software design has embraced components. Developers who exploit the associated tools and strongly-typed object-oriented languages can be more productive. However, existing tools don’t go as far as they could with respect to distributed applications. These are often tightly coupled t ..."
Abstract
-
Cited by 11 (11 self)
- Add to MetaCart
Abstract. Modern software design has embraced components. Developers who exploit the associated tools and strongly-typed object-oriented languages can be more productive. However, existing tools don’t go as far as they could with respect to distributed applications. These are often tightly coupled to complex underlying communication substrates and require that developers work through procedure-call APIs, even when using modern SOA platforms. We propose a new application development 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 different 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. 1
Programming Live Distributed Objects with Distributed Data Flows. Cornell University
"... This paper presents a new object-oriented approach to modeling the semantics of distributed multi-party protocols such as leader election, distributed locking, or reliable multicast, and a programming language that supports it. The approach builds on and extends our live distributed objects model [3 ..."
Abstract
-
Cited by 4 (4 self)
- Add to MetaCart
This paper presents a new object-oriented approach to modeling the semantics of distributed multi-party protocols such as leader election, distributed locking, or reliable multicast, and a programming language that supports it. The approach builds on and extends our live distributed objects model [37] by introducing a new concept of a distributed flow, a stream of messages flowing concurrently at multiple locations. Our flows correspond to variables, private fields, and method parameters in Java-like languages; they are the means by which we store and communicate state. Active protocol instances, which correspond to Java objects, consume and output flows; their internal states are encapsulated as internal flows, and all of their internal logic is represented as operations on flows. Our language supports a new type of concern separation:
A Collaborative Programming Environment for Web Interoperability
- In 1st Workshop on Semantic Wikis (SemWiki '06). Budva
"... Abstract. We describe a new type of collaborative system that exhibits much of the simple, cooperative nature of a wiki, but allows dynamic sharing of functionality as well as of content. In contrast with traditional wikis, pages in this system are executable, and interoperate with each other by pas ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Abstract. We describe a new type of collaborative system that exhibits much of the simple, cooperative nature of a wiki, but allows dynamic sharing of functionality as well as of content. In contrast with traditional wikis, pages in this system are executable, and interoperate with each other by passing and returning data structures of known type, such as messages, URLs, or locations. This collaborative programming environment is well suited to retrieving and combining content available on the Web. Since code within pages can access any type of Web content, the environment provides a collaborative way to convert diverse, unstructured information into semantically annotated content that can be combined into new and useful services. We discuss how these ideas have been applied in WubHub, a prototype Web portal with a command-line interface. 1
Steps Toward The Reinvention of Programming -- A Compact and Practical Model of Personal Computing as a Self-Exploratorium
-
, 2006
"... ..."
Survey of Technologies for Web Application Development [forthcoming
- ACM Press. Available
, 2005
"... Web-based application developers face a dizzying array of platforms, languages, frameworks and technical artifacts to choose from. We survey, classify, and compare technologies supporting Web application development. The classification is based on (1) foundational technologies; (2) integration with ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Web-based application developers face a dizzying array of platforms, languages, frameworks and technical artifacts to choose from. We survey, classify, and compare technologies supporting Web application development. The classification is based on (1) foundational technologies; (2) integration with other information sources; and (3) dynamic content generation. We further survey and classify software engineering techniques and tools that have been adopted from traditional programming into Web programming. We conclude that, although the infrastructure problems of the Web have largely been solved, the cacophony of technologies for Web-based applications reflects the lack of a solid model tailored for this domain.
D.: Distributed Data Flow Language for Multi-Party Protocols
- In: PLOS ’09: Proceedings of the 5th ACM SIGOPS Workshop on Programming Languages and Operating Systems. (2009
"... This paper presents a new object-oriented (OO) approach to modeling the semantics of distributed multi-party protocols such as leader election, distributed locks or reliable multicast, and a programming language that supports it. The approach extends our live distributed objects (LO) model with the ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
This paper presents a new object-oriented (OO) approach to modeling the semantics of distributed multi-party protocols such as leader election, distributed locks or reliable multicast, and a programming language that supports it. The approach extends our live distributed objects (LO) model with the new concept of a distributed flow (DF), a stream of events that flow concurrently at multiple locations. DFs correspond to local variables, private fields,and method parameters in Java-like languages; they’re means by which one stores and communicates state. Protocol instances correspond to Java objects; they consume and output flows; their internal states are encapsulated as internal flows, and their internal logic is represented as operations on flows. Our language provides a new type of concern separation: the semantic structure of protocols is decoupled from implementation details such as construction and maintenance of overlays, trees, and other structures used for scalability. These can be generated by the compiler or at deployment time. This can be done differently in different parts of the network, to match the local environment.
Building a 3D Virtual Museum of Native American Baskets
"... Abstract — In this paper we report our progress in building a system for the acquisition, analysis, and visualization of a collection of Native Californian baskets from the Phoebe A. Hearst Museum of Anthropology. Our project differs from existing cultural heritage applications in terms of its focus ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Abstract — In this paper we report our progress in building a system for the acquisition, analysis, and visualization of a collection of Native Californian baskets from the Phoebe A. Hearst Museum of Anthropology. Our project differs from existing cultural heritage applications in terms of its focus: to build tools and techniques for visualizing and studying a large number of related objects – in this case, baskets. We present our progress in the following system components: (i) laser-scanning of baskets, (ii) construction and processing of 3D models, and (iii) building virtual exhibits. We conclude the paper with our experiences and a summary of challenges we anticipate in building a completely automated system for processing and analyzing a large set of models – such as might be encountered when digitizing a large museum collection. Efficient retrieval and visualization of artifact collections are important to a number of communities, including anthropology researchers, Native American tribes, and the general public. I.
An Architecture and Business Process Framework for Global Team Collaboration
, 2004
"... Tools for remote team collaboration within businesses have been available since the mid-1980s. Two opposing trends cause complete collaboration solutions to remain elusive. On the one hand, core tool capabilities are developed as point solutions, and then extra functions are added. These added funct ..."
Abstract
- Add to MetaCart
Tools for remote team collaboration within businesses have been available since the mid-1980s. Two opposing trends cause complete collaboration solutions to remain elusive. On the one hand, core tool capabilities are developed as point solutions, and then extra functions are added. These added functions may not integrate well with or be as fully developed as the core functionality. On the other hand, enterprises are rapidly globalizing and becoming more dependent on comprehensive collaboration applications to coordinate distributed teams. This means that overall productivity is affected by how well tools, processes, and capabilities are integrated; the tools should not be just a collection of separate features/functions.
PlanetLab and its Applicability
, 2004
"... This paper presents the requirements for dynamically selfconfiguring network services and looks at the IBM Autonomic Computing Toolkit. The fourth paper looks at wireless network requirements for interactive multimedia, which typically requires high bandwidth due to the data rates and workload si ..."
Abstract
- Add to MetaCart
This paper presents the requirements for dynamically selfconfiguring network services and looks at the IBM Autonomic Computing Toolkit. The fourth paper looks at wireless network requirements for interactive multimedia, which typically requires high bandwidth due to the data rates and workload size. This paper presents a scalable and adaptive system-level approach for wireless multimedia in the Proactive Enterprise environment. The fifth paper examines network security. The most common solution available today for cyber security is the hardening of systems via "patching." This paper discusses how policy-enabled network security, complemented by system hardening, can provide a proactive strategy by reducing the likelihood of cyber threats and by controlling their spread. The sixth paper examines the idea of "Internet Suspend and Resume" where a user's entire personal computing environment, including the operating system, and its applications, data files, customizations, and current computing state is maintained in centralized storage. By using virtual machine technology, this computing environment may be easily transported and quickly instantiated on any Internet suspend and resume (ISR) client machine
Sub-method Structural and Behavioral Reflection
"... Prof. Dr. P. Messerli This dissertation is available as a free download from ..."
Abstract
- Add to MetaCart
Prof. Dr. P. Messerli This dissertation is available as a free download from

