Flexible object encapsulation for ambient-oriented programming

  • Authors:
  • Wolfgang De Meuter;Éric Tanter;Stijn Mostinckx;Tom Van Cutsem;Jessie Dedecker

  • Affiliations:
  • Université des Sciences et Technologies de Lille, France and Vrije Universiteit Brussel, Belgium;University of Chile, Chile;Vrije Universiteit Brussel, Belgium;Vrije Universiteit Brussel, Belgium;Vrije Universiteit Brussel, Belgium

  • Venue:
  • DLS '05 Proceedings of the 2005 symposium on Dynamic languages
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

In the emerging field of Ambient Intelligence (AmI), software is deployed in wireless open networks of mobile devices. Such open networks require stringent security measures as unknown and untrusted hosts may join the network. In an object-oriented language, where objects are distributed and moved across the network, it thus becomes important to be able to enforce object encapsulation. In contemporary object-oriented programming languages, powerful operations such as object extension (inheritance), cloning and reflection, are typically provided via omnipotent language operators that fail to uphold object encapsulation, because they can be applied without the explicit consent of the concerned object. This paper formulates a language design principle --extreme encapsulation-- that precludes the use of such harmful operators, and proposes a corresponding language feature --method attributes-- that makes it possible to provide the flexibility of object extension, cloning and reflection without compromising on object encapsulation. Although some existing object-based languages can be said to support extreme encapsulation, our contribution is to support it in a delegation-based, prototype-based language named ChitChat.