The evolution of smartphones has given rise to urban-area applications: applications that communicate in a city by means of the public (moving) infrastructure, e.g. buses and trams. In this setting, applications need to communicate and discover each other using intermediaries that move around the city and trans- fer data between them. This requires programmers to scatter code that deals with routing messages to the correct place and dealing with network failures all over their programs. Our approach allows the pro- grammer to specify urban-area applications in a high-level manner without the burden of directly encoding communication using intermediaries. We present this as a translation from a high-level object-oriented pro- gramming paradigm to a low-level communication mechanism. This translation allows the programmer to restrict routing of messages to e.g. a certain number of hops, geographic areas or even types of carrier devices. In addition we show how high-level group messaging can be efficiently represented in the low-level communication. Finally, we document our experiences in setting up a small-scale real-world urban-area application.
Original languageEnglish
Article number8
Number of pages20
JournalACM Transactions on Autonomous and Adaptive Systems (TAAS)
Issue number2
Publication statusPublished - 2014

    Research areas

  • tupe spaces, distributed programming, ambient-oriented programming, language design

ID: 2437349