RT Journal Article
JF IEEE Transactions on Software Engineering
TI FlowTalk: Language Support for Long-Latency Operations in Embedded Devices
A1 William Harrison,
A1 Siobhán Clarke,
A1 Vinny Cahill,
A1 Alexandre Bergel,
K1 Embedded systems
K1 object-based programming.
AB Wireless sensor networks necessitate a programming model different from those used to develop desktop applications. Typically, resources in terms of power and memory are constrained. C is the most common programming language used to develop applications on very small embedded sensor devices. We claim that C does not provide efficient mechanisms to address the implicit asynchronous nature of sensor sampling. C applications for these devices suffer from a disruption in their control flow. In this paper, we present FlowTalk, a new object-oriented programming language aimed at making software development for wireless embedded sensor devices easier. FlowTalk is an object-oriented programming language in which dynamicity (e.g., object creation) has been traded for a reduction in memory consumption. The event model that traditionally comes from using sensors is adapted in FlowTalk with controlled disruption, a light-weight continuation mechanism. The essence of our model is to turn asynchronous long-latency operations into synchronous and blocking method calls. FlowTalk is built for TinyOS and can be used to develop applications that can fit in 4 KB of memory for a large number of wireless sensor devices.
PB IEEE Computer Society, [URL:http://www.computer.org]