That was a very informed comment on the "Colors of Infinity".
Fifteen to twenty years ago, I wrote a Qbasic program which I called "Almondbread" - an English translation of the word "Mandelbrot" (har, har, har).
It displayed in QVGA (320 by 240), by plotting two dots to the same place on screen, and two rows to each row. The colours were limited on screen, but one could see the pattern. The file on disk was VGA (640 by 480), and 256 colours. The starting co-ordinates and a number such as 0 or 1 were dumped into the picture area (bottom left) to keep a record.
When the BMP file (which I renamed as something like MBM -Mandelbrot bitmap) was loaded into Almondbread, a small cursor of 32 by 24 dots on screen (negative video) appeared. This could be moved with the arrow keys, and ENTER could be pressed. Almondbread would now make a tenfold enlargement of the chosen area. That, in turn, could be used for a hundredfold enlargement and so on. All because of the few corrupted bytes carrying the parameters.
One could, of course, make another enlargement just one screen-dot out of place, and then join images together so that even the corrupted bytes were covered.
This was the tool I used for the Gamma-function images. It was very, very slow - particularly with the slow processors of those times. Often, like most fractal enthusiasts, I would leave the computer running for weeks. However, being Basic, it allowed any mathematical function to be put inside the recursion loop. There was even a Quick-Basic compiler that was Qbasic compatible, so if I had got myself the compiler I could have made a stand-alone EXE.
Last night (Sunday, 15 October 2006) I tried out FRACTINT. This is because I do not want to "reinvent the wheel". I also searched my belongings in the hope of finding Almondbread. No luck yet.
For years I have been toying with the idea of making a high-speed RECURSION LANGUAGE that would run in fixed-point, and accept polynomials. The general idea is that a script would be written (TEMPLATE.REC or PROGRAM.REC), and RECURSE.COM would compile into itself the set of machine-code macros (with no CALLS) that would generate the image. Because I have limited tools, it would have to be a DOS command - but an icon could be used, and clicked from Windows (as with my LEN, ANNA and other programs). So a window opens for DOS, the program needs no parameters - they are in the template - and then it closes.
I conceived the fractional factorials for three reasons:
(1) When you use a pocket calculator, and input the number 3 followed by the exclamation mark, it gives 6 - the factorial. However, if you input 3, divide by 10 (giving 0.3), multiply by 10 (giving 3) and then an exclamation mark, it says "ERROR". A needless error-halt. This is because 0.3 is 0.0100110011001100110011' in binary and the registers are too small for an infinite sequence. So the number 0.29999999999999 is rounded up and only looks like 0.3. Similarly, 2.9999999999999 only looks like 3. The factorial program will not accept fractions on a calculator, but the "fRactorial" program will.
(2) To integrate X cubed, you divide by 4 and raise the power by 1 - giving one-quarter X to the fourth. To differentiate, you divide by 3 and lower the power by 1, giving 3 X-squared. I changed this to integration by 3!/4! X-to-the-fourth and differentiation by 3!/2! X-squared. They are functionally identical. However, given the fractional factorials one can half-integrate or half-differentiate by plugging in fractional factorials instead of integer factorials. So the processof calculus becomes a continuum - that is my Eucalculus (on my website). Sines and cosines, for example, can be partially integrated or partially differentiated by working on the polynomial.
(3) Factorial 3 is 6. Gamma 4 is 6. Did Euler make a mistake? Why is the Gamma function incompatible with the factorials? On a calculator, one needs two buttons. This does not make sense. I suggested my fractional factorials because they can be used for factorials - even when one has 2.9999999999999 giving 5.9999999999999, and for gamma by taking 4, subtract 1, and do fractorials. Both functions from the same button. These things are used for Bessel functions and the like.
After I published, a mathematician friend said that the Russians are tending to give up gamma in favour of fractional factorials.
There is my information on Euler and the Eucalculus at
http://wehner.org/euler and on machine-code mathematics at
http://wehner.org/fpoint .
I also explored the Gamma function in the complex plane, as did Weierstrass. Here is a remarkable generalisation:
For any polynomial of the form A + BZ + CZ-squared + DZ-cubed etc., there will be symmetry about the X-axis. This is not just true for Mandelbrot but for all transcendental functions. Just try working out with Z=X+iY and with Z=X-iY the terms Z, Z-squared, Z-cubed etc, and you can see the symmetry.
I was using a Chebychev polynomial in "Almondbread", that polynomial having been created for the range 0 to 3. I could move down or up the X-axis (1.5! is 0.5! times 1.5) but not up or down the imaginary Y. So the special polynomial made this possible.
I remember the images. There were five regions in the plane where "blobs" appeared. I may yet try to recreate them.
Charles