Sciweavers

ICFP
2008
ACM

Flask: staged functional programming for sensor networks

14 years 11 months ago
Flask: staged functional programming for sensor networks
Severely resource-constrained devices present a confounding challenge to the functional programmer: we are used to having powerful ion facilities at our fingertips, but how can we make use of these tools on a device with an 8- or 16-bit CPU and at most tens of kilobytes of RAM? Motivated by this challenge, we have developed Flask, a domain specific language embedded in Haskell that brings the power of functional programming to sensor networks, collections of highly resource-constrained devices. Flask consists of a staging mechanism that cleanly separates node-level code from the meta-language used to generate node-level code fragments; syntactic support for embedding standard sensor network code; a restricted subset of Haskell that runs on sensor networks and constrains program space and time consumption; a higher-level "data stream" combinator library for quickly constructing sensor network programs; and an extensible runtime that provides commonly-used services. We demonst...
Geoffrey Mainland, Greg Morrisett, Matt Welsh
Added 13 Dec 2009
Updated 13 Dec 2009
Type Conference
Year 2008
Where ICFP
Authors Geoffrey Mainland, Greg Morrisett, Matt Welsh
Comments (0)