Mathematica will not replace software written in the FORTRAN or C languages, but it does have a place in algorithm development. Mathematica is more flexible than traditional languages and has many mathematical algorithms supplied in forms that are less complex and more flexible than the mathematical libraries usually available in FORTRAN or C. Mathematica's graphics are well developed and easy to use.

This flexibility and simplicity comes with a price. Mathematica runs a given job slower than a comparable job using FORTRAN or C. For small prototypes, this lack of speed may be acceptable, but for many seismic datasets, the run time soon becomes unacceptable. Another serious limitation is Mathematica's memory size limitations. With Mathematica, all the data must reside in memory, where FORTRAN or C allows moving data in and out of auxiliary storage. Where a FORTRAN array requires only the space needed for the floating point numbers, Mathematica stores the array in a more generalized format that takes several times more space. Finally, FORTRAN and C are generally familiar to software developers; Mathematica is a new language to be learned.

The issue of computer algebra have not been addressed in this paper but is an important enough topic to generate interest for anyone using more than the simplest mathematical manipulations. Useful work may be done with only a quick introduction to the system, while most of the possible complexity of the system may be ignored. I recommend reading the Part 1 of Wolfram (1991) and ignoring the largest part of this book. Much of the material in the book is only needed for reference and may be used only when the particular topic is required.

11/18/1997