Expressing measurement units in interfaces for scientific component software

  • Authors:
  • Kostadin Damevski

  • Affiliations:
  • Virginia State University, Petersburg, Virginia

  • Venue:
  • Proceedings of the 2009 Workshop on Component-Based High Performance Computing
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Scientific computing programs rarely use measurement units to express quantities, even though such units are common-place in pencil and paper calculation. Tools that enable expressing measurement units and enforce dimensional safety have been made available in popular programming languages for some time, but they still lack a significant following. We posit that scientific programmers should not be burdened by units at each statement in their programs, but that units should be inserted in software component interfaces. This coarser grain approach enables the prevention of errors that occur when components written by different teams are composed, which we believe is a major cause of dimensional errors. We present our design of adding measurement units to interfaces in the CCA component model, which is targeted at the scientific computing community, in order to provide dimensional safety, an extensible set of measurement units and automatic conversion between commensurable quantities.