I. Introduction
Data processing software is an essential component of systems that aggregate and analyse real-world data, thereby enabling automated interaction between such systems and the real world. Examples are search engines that return stock quotes [1] or personal information collected from the web [2], web applications that show real-time airplane positions [3], devices such as specialised eyeglasses that capture images and provide contextual suggestions [4], and phones able to translate in real time the words of a road sign [5].