TL;DR: This work is particularly concerned with implementation of the dynamic global name space that the generative communication model requires, and its implications for systems programming in distributed settings generally and on integrated network computers in particular.
Abstract: Generative communication is the basis of a new distributed programming langauge that is intended for systems programming in distributed settings generally and on integrated network computers in particular. It differs from previous interprocess communication models in specifying that messages be added in tuple-structured form to the computation environment, where they exist as named, independent entities until some process chooses to receive them. Generative communication results in a number of distinguishing properties in the new language, Linda, that is built around it. Linda is fully distributed in space and distributed in time; it allows distributed sharing, continuation passing, and structured naming. We discuss these properties and their implications, then give a series of examples. Linda presents novel implementation problems that we discuss in Part II. We are particularly concerned with implementation of the dynamic global name space that the generative communication model requires.
TL;DR: A new field in distributed computing, called Ambient Intelligence, has emerged as a consequence of the increasing availability of wireless devices and the mobile networks they induce as mentioned in this paper, and developing software for such mobile networks is extremely hard in conventional programming languages because of new distribution issues related to volatile network connections, dynamic network topologies and partial failures.
Abstract: A new field in distributed computing, called Ambient Intelligence, has emerged as a consequence of the increasing availability of wireless devices and the mobile networks they induce. Developing software for such mobile networks is extremely hard in conventional programming languages because of new distribution issues related to volatile network connections, dynamic network topologies and partial failures.
TL;DR: AmbientTalk is a distributed object-oriented language whose actor-based, event-driven concurrency model makes it highly suitable for composing service objects across a mobile network.
Abstract: In this paper, we describe AmbientTalk: a domain- specific language for orchestrating service discovery and composition in mobile ad hoc networks. AmbientTalk is a distributed object-oriented language whose actor-based, event-driven concurrency model makes it highly suitable for composing service objects across a mobile network. The language is a so-called ambient-oriented programming language which treats network partitions as a normal mode of operation. We describe AmbientTalk's object model, concurrency model and distributed communication model in detail. We also highlight influences from other languages and middleware that have shaped AmbientTalk's design.
TL;DR: A suite of characteristics of future Ambient-Oriented Programming languages are postulated and a simple programming language kernel, called AmbientTalk, that meets these characteristics is subsequently presented.
Abstract: A new field in distributed computing, called Ambient In-telligence, has emerged as a consequence of the increasing availability of wireless devices and the mobile networks they induce. Developing software for such mobile networks is extremely hard in conventional programming languages because the network is dynamically defined. This hardware phenomenon leads us to postulate a suite of characteristics of future Ambient-Oriented Programming languages. A simple re ective programming language kernel, called AmbientTalk, that meets these characteristics is subsequently presented. The power of the re ective kernel is illustrated by using it to conceive a collection of high level tentative ambient-oriented programming language features.
TL;DR: Modular Software Upgrades for Distributed Systems and Managing the Evolution of Aspect-Oriented Software with Model-Based Pointcuts are discussed.
Abstract: Keynote- Design Patterns - 15 Years Later- Program Query and Persistence- codeQuest: Scalable Source Code Queries with Datalog- Efficient Object Querying for Java- Automatic Prefetching by Traversal Profiling in Object Persistence Architectures- Ownership and Concurrency- The Runtime Structure of Object Ownership- On Ownership and Accessibility- Scoped Types and Aspects for Real-Time Java- Transparently Reconciling Transactions with Locking for Java Synchronization- Special 20th Anniversary Session- Object Technology - A Grand Narrative?- Peak Objects- From ECOOP'87 to ECOOP 2006 and Beyond- The Continuing Quest for Abstraction- Early Concurrent/Mobile Objects- Keynote- Turning the Network into a Database with Active XML- Languages- SuperGlue: Component Programming with Object-Oriented Signals- Ambient-Oriented Programming in AmbientTalk- Responders: Language Support for Interactive Applications- Type Theory- Variance and Generalized Constraints for C Generics- A Semantic Analysis of C++ Templates- Session Types for Object-Oriented Languages- Parameterized Modules for Classes and Extensible Functions- Keynote- The Closing of the Frontier- Tools- Augmenting Automatically Generated Unit-Test Suites with Regression Oracle Checking- Automated Detection of Refactorings in Evolving Components- Modeling Runtime Behavior in Framework-Based Applications- Modularity- Modular Software Upgrades for Distributed Systems- Demeter Interfaces: Adaptive Programming Without Surprises- Managing the Evolution of Aspect-Oriented Software with Model-Based Pointcuts