Abstract
Future ubiquitous computing environments will consist of massive, ad hoc networks of embedded systems deployed in the physical space. Programming such environments requires new abstractions and computing models. This paper presents Spatial Programming (SP), a novel paradigm for programming ubiquitous computing environments. SP offers access to data and services distributed on nodes spread across the physical space in a similar fashion to access to memory using references. SP programs access network resources using a high level abstraction, termed spatial reference, which names these resources using their spatial properties and content-based names. An underlying system takes care of mapping spatial references onto target nodes in the network. Thus, SP hides the complexity of the underlying network from the programmer, while offering a simple and intuitive programming.