Nevertheless, the source is in the public domain. Perhaps this is a naive attitude, but I do not think of this code as a thing to be owned, but as more of thought to be spread about. If you want to send me some money because I have saved you x-manhours, then feel free to do so. For lack of a better word, call it begger-ware. I kind of see myself on a street corner, playing my guitar, singing a song, and my case with a little spare change in it. If you like the song, you can toss in a buck or two. God only knows but Frank Borland could trek by with his burro and his dogs on his way to the High Sierras for Yet Another Matrix Program–ming camp out.
I do not plan to support the code very much. It costs too much time and money. You can write me if you have any problems. I will keep a list of names and addresses of the people who contact me about the code. It may become advantageous to change this support policy. But as of now I'm not out to start some company that eats into my otherwise busy normal life. I already have a good job.
I assume that anyone who uses this code is smart enough to use it well, so I have minimized the amount of commenting in it. Some of the code is very fragile, so change it at your own risk. Your best bet is to study it and just add functions. I will give references for those of you who want to really dig into the guts. Also read the test file. I really think this documentation will be a sufficient explanation of the details you can fool with safely. (This document is prepared in LATEXbut it should be readable as pure text)
Also please send me your name and address if you are using yamp. I need to convince some people that it has a user base. As of this release, there have been about 800 downloads from Compuserve, with about 50 onto local bulletin boards and public domain software distributors. By now I am guessing that it is being used around the world. That's neat.
I have tested the program, and it does what I tell it to do (and we all know how much of a problem that can be). I have only tested it in Turbo C++. It may not work in any other language. It works on my XT, AT, and 386 clones, so I assume it will work on the same machines where Turbo C++ works well. There are places where its performance can be improved. I just wanted something that works. I'm not a professional computer scientist, so improving the algorithms will provide some challenges to a professional. I also hope it sparks some interest in C++ among mathematicians.
Maybe the only reason I'm circulating the code because I'm amazed that it works at all. I guess that other people have been fishing around for an answer to the same problems. Here is my answer.