Mathematical software transportability systems have the variations a theme?
Since about 1970 a number of individuals and groups developing mathematical software have begun employing at least moderately elaborate software tools to assist in making their software available on a variety of computers. In this paper four of these systems are compared and contrasted by considering for each the setting in which its developers work, the objectives set for the system, the approach taken and features included to meet the objectives, and an assessment of the performance and contributions of the system.
When the systems are viewed in this way, it becomes apparent that many of the differences between them result from differences between the settings in which they were developed, and that in fact there is a common theme of which they are variations. In the latter part of this paper this common theme is generalized and its implications for the future evolution of tools for mathematical software development are discussed.
In particular, the concepts of program realization and realization function are introduced as abstractions of the common processes carried out by these systems. The generality inherent in these concepts suggests how transportability systems can evolve into software tools which will make it possible to achieve substantial economies of scale in the mathematical software development process.
KeywordsRealization Function Double Precision Mathematical Software Target Environment Master File
Unable to display preview. Download preview PDF.
- 1.Thomas J. Aird, The Fortran Converter User's Guide, International Mathematical and Statistical Libraries, Houston, TX, January 1976.Google Scholar
- 2.Thomas J. Aird, The IMSL Fortran Converter: An Approach to Solving Portability Problems, These Proceedings.Google Scholar
- 3.Thomas J. Aird, Edward L. Battiste, and Walton C. Gregory, Portability of Mathematical Software Coded in Fortran, to appear in ACM Transactions on Mathematical Software.Google Scholar
- 4.James M. Boyle, Portability Problems and Solutions in NATS, Proceedings of the Software Certification Workshop (Granby, Colorado, August 1972), Wayne Cowell, Ed., Argonne National Laboratory, 1973, 80–89.Google Scholar
- 5.James M. Boyle and Kenneth W. Dritz, An Automated Programming System to Facilitate the Development of Quality Mathematical Software, Information Processing 74, North-Holland Publishing Company, 1974, 542–546.Google Scholar
- 6.James M. Boyle, Kenneth W. Dritz, Oleg B. Arushanian, and Yuri V. Kuchevskiy, Program Generation and Transformation — Tools for Mathematical Software Development, Proceedings of IFIP Congress 77, North-Holland Publishing Co., (to appear).Google Scholar
- 7.James M. Boyle and Marilyn Matz, Automating Multiple Program Realizations, Proceedings of the M.R.I. International Symposium XXIV: Computer Software Engineering, Polytechnic Press, Brooklyn, N.Y., 1977.Google Scholar
- 8.James M. Boyle, An Introduction to the Transformation-Assisted Multiple Program Realization (TAMPR) System, Numerical Analysis in Fortran, XVII, Moscow University Press, 1976 (Russian); in J. R. Bunch, Ed. Cooperative Development of Mathematical Software, Tech. Report, Dept. of Mathematics, Univ. of Calif., San Diego, CA, 1977 (English).Google Scholar
- 9.W. S. Brown, A Realistic Model of Floating-Point Computation in Mathematical Software III, John R. Rice, Ed., Academic Press, New York, 1977, (to appear).Google Scholar
- 10.W. J. Cody, Robustness of Mathematical Software, Proceedings of the Ninth Interface Symposium on Computer Science and Statistics, Harvard University, 1–2 April 1976, 76–78.Google Scholar
- 11.W. J. Cody, The FUNPACK Package of Special Function Subroutines, ACM Transactions on Mathematical Software, 1, 1, (March 1975), 13–25.Google Scholar
- 12.Kenneth W. Dritz, An Introduction to the TAMPR System Formatter, Numerical Analysis in Fortran, XVII, Moscow University Press, 1976 (Russian); in J. R. Bunch, Ed. Cooperative Development of Mathematical Software, Tech. Report, Dept. of Mathematics, Univ. of Calif., San Diego, CA, 1977 (English).Google Scholar
- 13.Kenneth W. Dritz, Multiple Program Realizations Using the TAMPR System, These Proceedings.Google Scholar
- 14.J. J. DuCroz, S. J. Hague, and J. L. Siemieniuch, Aids to Portability Within the NAG Project, These Proceedings.Google Scholar
- 15.Brian Ford and Stephen J. Hague, Some Transformations of Numerical Software (in preparation).Google Scholar
- 16.Phyllis A. Fox, PORT — A Portable Mathematical Subroutine Library, These Proceedings.Google Scholar
- 17.Wayne L. Fullerton, Portable Special Function Routines, These Proceedings.Google Scholar
- 18.Stephen J. Hague and Brian Ford, Portability — Prediction and Correction, Software Practice and Experience 6, 1976, 61–69.Google Scholar
- 19.Fred T. Krogh, A Method for Simplifying the Maintenance of Software which Consists of Many Versions, Section 914, Memorandum 314, Jet Propulsion Laboratory, Pasadena, CA, 15 September 1972.Google Scholar
- 20.Fred T. Krogh and Shirley A. Singletary, Specializer User's Guide, Section 914, Memorandum 404, Jet Propulsion Laboratory, Pasadena, CA, February 1976.Google Scholar
- 21.Fred T. Krogh, Features for FORTRAN Portability, These Proceedings.Google Scholar
- 22.Michael Malcolm, Critique of a Talk on Software Portability, Los Alamos Scientific Laboratory, Los Alamos, New Mexico, May 1976.Google Scholar
- 23.B. N. Parlett and Y. Wang, The Influence of the Compiler on the Cost of Mathematical Software, ACM Transactions on Mathematical Software 1, 1, (March 1975), 35–46.Google Scholar
- 24.J. L. Schonfelder, The Production and Testing of Special Function Software in the NAG Library, These Proceedings.Google Scholar
- 25.Brian T. Smith, James M. Boyle, and William J. Cody, The NATS Approach to Quality Mathematical Software, in Software for Numerical Mathematics, D. J. Evans, Ed., Academic Press, New York, 1974, 393–405.Google Scholar
- 26.Brian T. Smith, Fortran Poisoning and Antidotes, These Proceedings.Google Scholar
- 27.James H. Wilkinson and Christian Reinsch, Handbook for Automatic Computation, Volume II, Linear Algebra, Part 2, Springer-Verlag, New York, Heidelberg, Berlin, 1971.Google Scholar