Polymorphism, subtyping, whole program analysis and accurate data types in usage analysis

  • Authors:
  • Tobias Gedell;Jörgen Gustavsson;Josef Svenningsson

  • Affiliations:
  • Department of Computing Science, Chalmers University of Technology and Göteborg University;Spotfire, Inc.;Department of Computing Science, Chalmers University of Technology and Göteborg University

  • Venue:
  • APLAS'06 Proceedings of the 4th Asian conference on Programming Languages and Systems
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

There are a number of choices to be made in the design of a type based usage analysis. Some of these are: Should the analysis be monomorphic or have some degree of polymorphism? What about subtyping? How should the analysis deal with user defined algebraic data types? Should it be a whole program analysis? Several researchers have speculated that these features are important but there has been a lack of empirical evidence. In this paper we present a systematic evaluation of each of these features in the context of a full scale implementation of a usage analysis for Haskell. Our measurements show that all features increase the precision. It is, however, not necessary to have them all to obtain an acceptable precision.