The TAMPR Program Transformation System:
Simplifying the Development of Numerical Software

James M. Boyle
Technology Development Division, Argonne National Laboratory, Argonne, IL 60439, USA.
boyle@mcs.anl.gov

Terence J. Harmer
Department of Computer Science, The Queen's University of Belfast, Belfast, BT7 1NN, UK.
t.harmer@qub.ac.uk

Victor L. Winter
Intelligent Systems and Robotics Center, Sandia National Laboratories, Box 5800, Albuquerque, NM 87185-0660, USA.
vlwinte@sandia.gov


Abstract

Writing correct numerical software is a complex, demanding, and, at times, even a boring, task. In this chapter, we describe an approach to constructing software - program specification and transformation - and allied tools that can help not only to ensure the correctness of numerical computations but also automate much of the drudge-work involved in preparing such software. This approach to software construction holds out the exciting prospect of enabling the numerical analyst or specialist in scientific computing to concentrate on correctly capturing the problem to be solved, while delegating the details of programming the software and adapting it to specialized computing environments to automated tools.