Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

Re: Reasons (not) to vote Motion 27: NO



Baker Kearfott wrote:
...my perception of the scope
of the standard is specification of individual operations,
rather than in the parsing of expressions in a programming
language.  However, I suppose we can define the individual
operations (including possible decorations) according to
their effect on expressions, and whether or not we are
thinking of free expressions or bound expressions would
affect how we do this.

Right, it does, as I think the discussion between Arnold and Vincent
illustrates.

FWIW, I tend to agree with Vincent when he wrote:

On 2011-08-17 19:13:48 +0200, Arnold Neumaier wrote:
Since you compute a function of two variables, you need to apply
domain to the vector consisting of both variables, not to each
variable separately!

I don't know exactily who would be responsible for applying domain,
but I think this is counter-intuitive. If I write:

 z = sqrt(x) + y;

I don't expect the computation of sqrt(x) to depend on y.

If this is the user who is responsible for applying domain on the
vector explicitly before the expression, then there are risks of
mistakes (unless the language forbids expressions and works only
on functions with explicit parameters).

An interval class library (or even an interval processor) is going to want
to implement sqrt(x) as an operation in such a way that the decoration does
not depend on y.

On the other hand, the addition operation receives the decorations of
sqrt(x) and y as input, so this would be the natural place to consider the
effect of those decorations on the final result.

Of course, the user may choose to explicitly set the decorations of x and y
before evaluating z to achieve some desired result; but in my view this
shouldn't be required to obtain correct and/or meaningful decorations for z.

Nate