Ambient Clouds: Reactive Asynchronous Collections for Mobile Ad Hoc Network Applications

  • Kevin Pinte
  • Andoni Lombide Carreton
  • Elisa Gonzalez Boix
  • Wolfgang De Meuter
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7891)

Abstract

In MANET applications, a common pattern is to maintain and query time-varying collections of remote objects. Traditional approaches require programmers to manually track the connectivity state of these remote objects and adding or removing them from local collections on a per-object basis. Queries over these collections have to be manually recomputed whenever the collection or its elements change.

The code for maintaining these ad-hoc collections is scattered across the application code and leads to bugs hindering the application development process. In this paper, we propose an object-oriented abstraction called ambient clouds: a collection of objects whose contents are implicitly updated when changes occur. Ambient clouds can be queried and composed using reactive standard query operators. We show how ambient clouds ease the development of a collaborative peer-to-peer drawing application.

Keywords

collection mobile ad hoc network peer-to-peer application language abstraction 

References

  1. 1.
    Eugster, P.T., Felber, P.A., Guerraoui, R., Kermarrec, A.: The many faces of publish/subscribe. ACM Computing Survey 35, 114–131 (2003)CrossRefGoogle Scholar
  2. 2.
    Van Cutsem, T., Mostinckx, S., Gonzalez Boix, E., Dedecker, J., De Meuter, W.: AmbientTalk: object-oriented event-driven programming in mobile ad hoc networks. In: SCCC 2007, pp. 3–12. IEEE Computer Society (2007)Google Scholar
  3. 3.
    Microsoft Corporation: The .NET standard query operators. Technical Specification (2006)Google Scholar
  4. 4.
    Meijer, E., Beckman, B., Bierman, G.: LINQ: reconciling object, relations and XML in the .NET framework, 706–706 (2006)Google Scholar
  5. 5.
    Cutsem, T.V., Mostinckx, S., Meuter, W.D.: Linguistic symbiosis between event loop actors and threads. Computer Languages, Systems & Structures 35, 80–98 (2009)CrossRefGoogle Scholar
  6. 6.
    Bainomugisha, E., Lombide Carreton, A., Van Cutsem, T., Mostinckx, S., De Meuter, W.: A survey on reactive programming. ACM Computing Surveys (2012) (to appear)Google Scholar
  7. 7.
    Eugster, P.T., Guerraoui, R., Sventek, J.: Distributed Asynchronous Collections: Abstractions for Publish/Subscribe Interaction. In: Bertino, E. (ed.) ECOOP 2000. LNCS, vol. 1850, pp. 252–276. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  8. 8.
    Gelernter, D.: Generative communication in Linda. ACM Transactions on Programming Languages and Systems 7, 80–112 (1985)MATHCrossRefGoogle Scholar
  9. 9.
    Murphy, A., Picco, G., Roman, G.C.: LIME: A middleware for physical and logical mobility. In: Proceedings of the 21st International Conference on Distributed Computing Systems, pp. 524–536. IEEE Computer Society (2001)Google Scholar
  10. 10.
    Van Cutsem, T., Dedecker, J., Mostinckx, S., Gonzalez Boix, E., D’Hondt, T., De Meuter, W.: Ambient references: addressing objects in mobile networks. In: OOPSLA 2006, pp. 986–997. ACM Press (2006)Google Scholar
  11. 11.
    Kaminsky, A., Bischof, H.P.: Many-to-many invocation: a new object oriented paradigm for ad hoc collaborative systems. In: OOPSLA 2002, pp. 72–73. ACM Press (2002)Google Scholar
  12. 12.
    Microsoft Corporation: The reactive extensions for .NET (2013), http://msdn.microsoft.com/en-us/data/gg577609

Copyright information

© IFIP International Federation for Information Processing 2013

Authors and Affiliations

  • Kevin Pinte
    • 1
  • Andoni Lombide Carreton
    • 1
  • Elisa Gonzalez Boix
    • 1
  • Wolfgang De Meuter
    • 1
  1. 1.Software Languages Lab.Vrije Universiteit BrusselBrusselBelgium

Personalised recommendations