My perspective: If you are doing 'numerics' where small is important, then
you must worry about that in your code. Expecting the software to provide
the answer appropriate for you (today) is unreal.
Several talk of sqrt x as x goes to zero. Yes continuity would be nice,
but what if your code overshoots (by a wee bit). Many verbs of math are
multi-sheeted. You can't (or shouldn't) ask J to pick your sheet for you.
If you worry about sqrt what do you want on nth root?, or principal values
for many verbs? And what about verbs with essential singularities at 0?
Completing the reals, whether including _ or __ (or both) is almost
irrelevant, the space is in fact anything but continuous. _ and __ are
awfully convenient in many cases, we can argue whether they are actually
numbers or defined place holders with some numeric characteristics. (I have
to admit to a curiousity about how Roger handles them internally.)
A serious problem can arise if -0 is not equal to +0, but if you use reals
can that ever happen? Sure early Fortran used to have a -0 and a +0, a
real pain.
The fundamental point is that the langauge (APL or J) work in a way that is
consistent over time, so my software can allow for it. J is not mathematics
(at least not directly), and the topological properties of the reals simply
will never translate, totally, into J (even if you do use ***x)
Interestingly it was a push by Kahan that got IBM to worry about the sign
of x in sqrt, early Fortran ignored the sign. When the sign was included
many 'working' packages suddenly failed, chaos all over the place.
Ralph Selfridge
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm