Delegation: a language facility for dynamic software adaptation

  • Authors:
  • Qun Yang;Man-Wu Xu;De-Chang Pi

  • Affiliations:
  • Nanjing University of Aeronautics and Astronautics, Nanjing;Nanjing University, Nanjing, Jiangsu, China;Nanjing University of Aeronautics and Astronautics, Nanjing

  • Venue:
  • ACM SIGSOFT Software Engineering Notes
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Due to the growing complexity of computing systems, and the increasing demand for high availability and reliability of them, adapting software at runtime is becoming more and more important. However, there is not sufficient support for dynamic software adaptation at the level of programming languages. In this paper, we investigate a language feature, namely delegation, to argue that delegation is a favorite choice to deal with dynamic software adaptation. To do that, we present Φ calculus, which is an imperative object-based calculus with delegation, to model essential features of languages, with focusing on how to incorporate delegation into programming languages to support dynamic software adaptation. We give the operational semantics of Φ calculus. We also state how delegation is used in object extending and method sharing between objects. We conclude that delegation makes dynamic software adaptation simpler and more flexible.