Region streams: functional macroprogramming for sensor networks