— In this paper we propose a routing strategy for enabling publish-subscribe communication in a sensor network. The approach is semi-probabilistic, in that it relies partly on the dissemination of subscription information and, in the areas where this is not available, on random rebroadcast of event messages. We illustrate the details of our approach,… (More)
In this paper we argue that it is possible to couple the advantages of programming with the well-known abstraction of RPC with asynchronous programming models adequate for wide-area programming environments such as grids. We discuss how some programming language features can help create different programming abstractions over a basic asynchronous invocation… (More)
This paper proposes a concurrency model which integrates the asynchronous and event-driven nature of networked sensors with a more familiar programming style for the developer. We argue that coroutines can provide a basis for this integration and describe some details of its implementation, which was developed as an extension to the TinyOS operating system.
This paper proposes a concurrency model which integrates the asynchronous and event-driven nature of wireless sensor networks with higher-level abstractions that provide a more familiar programming style for the developer. As a basis for this proposal, we designed and implemented a cooperative multitasking scheduler, based on coroutines, for the TinyOS… (More)
In this paper, we discuss adequate abstractions and mechanisms for developing distributed applications in mobile environments. We argue that coordination and event orientation are important technologies for these environments. To show that these technologies can be used in conjunction with well-known, conventional programming models, we describe a system… (More)
Terra is a system for programming wireless sensor network (WSN) applications. It combines the use of configurable virtual machines with a reactive scripting language that can be statically analyzed to avoid unbounded execution and memory conflicts. This approach allows the flexibility of remotely uploading code on motes to be combined with a set of… (More)