```TSa wrote:
>  Jon Lang wrote:
>  > all unary operators, be
>  > they prefix or postfix, should be evaluated before any binary operator
>  > is.
>
>  Note that I see ** more as a parametric postscript then a real binary.
>  That is \$x**\$y sort of means \$x(**\$y).```
```
That's where we differ, then.  I'm having trouble seeing the benefit
of that perspective, and I can clearly see a drawback to it - namely,
you have to think of infix:<**> as being a different kind of thing
than infix:.«<+ - * />, despite having equivalent forms.

>  Note also that for certain
>  operations only integer values for \$y make sense. E.g. there's no
>  square root of a function.

...as opposed to a square root of a function's range value.  That is,
you're talking in terms of linear algebra here, where "D²(x)" means
"D(D(x))", as opposed to basic algebra, where "f²(x)" means "(f(x))²".
This is similar to your earlier "the other Linear" comment.

This is a case where the meaning of an operator will depend on the
system that you're dealing with.  Math is full of these, especially
when it comes to superscripts and subscripts.  I'd recommend sticking
to the basic algebraic terminology for the most part (e.g., "f²(x) :=
(f(x))²"), and apply "all's fair if you predeclare" if you intend to
use a more esoteric paradigm.  So if you want:

D²(x) + 2D(x) + x

to mean:

(D(D(x)) + 2 * D(x) + x

You should say:

use linearAlgebra;
D²(x) + 2D(x) + x

--
Jonathan "Dataweaver" Lang
```