The puppet and the probe

  • Authors:
  • Samvida Nanda;Soumya Ramasubramaniam;Sumana Ramasubramaniam;Agastya Nanda;Mangala Gowri Nanda

  • Affiliations:
  • Srishti School of Art, Design and Technology, Bangalore, India;National Law University, Jodhpur, Jodhpur, India;Sushant School of Art and Architecture, Gurgaon, India;Jaypee Institute of Information Technology, Noida, India;IBM Research, India, New Delhi, India

  • Venue:
  • Proceedings of the 24th ACM SIGPLAN conference companion on Object oriented programming systems languages and applications
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Visualization of a program typically entails low level views of the program execution state showing, for example, method invocations or relations amongst heap objects. In most cases, this would imply visualization of the executable program. However there is a certain genre of programs that analyze or transform other programs. These programs could be compilers, static bug detectors, test suite analyzers, model to model transformers etc. In such cases, very often, it helps to visualize what is happening to the input program rather than the analyzer program. It is for such programs that we describe a configurable, analysis framework. For ease of exposition, we call the analyzer program the "manipulate" program, and the input program the "puppet" program. Using out visualization scheme, we are able to (1) gain insight into the manipulate program; (2) collect useful information / statistics about the puppet program. We have implemented the visualizer in a tool called "INSIGHT". We ran INSIGHT on a static debugging tool (the manipulate program) called XYLEM. XYLEM applies static analysis to find potential null pointer exceptions in a puppet program, as for example, the Apache Ant program. We report the insights gained by running XYLEM through INSIGHT on ANT and other puppet programs. Further, to visualize the concept of a visualizing a puppet program by a manipulate program, we present the "the puppet and the probe".