Thread Links | Date Links | ||||
---|---|---|---|---|---|
Thread Prev | Thread Next | Thread Index | Date Prev | Date Next | Date Index |
Nate Hayes wrote:
Arnolde Neumaier wrote:Nate Hayes wrote: > Michel Hack wrote: >> Arnold's scheme lumps certain conditions together that >> Nates' distinguishes -- but I doubt ALL distinctions are made, so in >> general operands of suspicious operations have to be inspected anyway, >> at which point full discrimination is possible. >>>> So if Arnold's scheme has other advantages, they should not be >> discarded>> because of this quibble between undefined, ill-defined and empty. > > Well, we don't see there are other advantages. Those who care to look for them, see.I am still looking... since you still have shown no advantages of lumping decorations for 1/0 and 1/Empty together.
The uniform appearance to the user, especially the non-expert user, makes for ease of use, which is a very significant advantage.
My choice uniformizes the performance of evaluating f([0,0]) for f(x)=1/x and f(x)=1+1/x, where naive users would expect the decoration D1=neverDefined because both functions are undefined at x=0, just as
they would expect the decoration D2=possiblyDefined for f([0,1]).A decoration D0=ill suggests a bug in the program body. Your interpretation provides the decoration D0=ill for f([0,0]) with f(x)=1+1/x, although no bug is present. The function _has_ to be programmed that way (or in another way also triggering a division
by zero) if one wants to evaluate them. Thus with your semantics, syntactically and semantically correct programs may generate the decoration ill. Therefore users cannot be sure that the decoration ill reflects a programming error, but must puzzle about the details of the definition of decorations in order to detect the cause of the apparent failure. With my semantics, the user never needs to know anything aboutdecorations if they are accessed only through standard-conforming functions of decorated intervals, and an appropriate compiler handles all decoration dependent issues, including switching and promotion.
Thus decorations can be left to the experts and those who want to play with them, leaving a high degree of safety for the casual user.