Retroactive aspects: programming in the past

  • Authors:
  • Robin Salkeld;Wenhao Xu;Brendan Cully;Geoffrey Lefebvre;Andrew Warfield;Gregor Kiczales

  • Affiliations:
  • University of British Columbia;University of British Columbia;University of British Columbia;University of British Columbia;University of British Columbia;University of British Columbia

  • Venue:
  • Proceedings of the Ninth International Workshop on Dynamic Analysis
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a novel approach to the problem of dynamic program analysis: writing analysis code directly into the program source, but evaluating it against a recording of the original program's execution. This approach allows developers to reason about their program in the familiar context of its actual source, and take full advantage of program semantics, data structures, and library functionality for understanding execution. It also gives them the advantage of hindsight, letting them easily analyze unexpected behavior after it has occurred. Our position is that writing offline analysis as retroactive aspects provides a unifying approach that developers will find natural and powerful.