`APU` (Arithmetic Processing Unit) evaluates an arithmetic expression
encoded as a `DATR` path.

APU:< ( 1 + 2 ) ^ 3 > = 27. APU:< ( ( 1 + 2 ) ^ 3 ) / ( 3 ^ 2 ) > = 3 . APU:< ( ( 1 + 2 ) ^ 3 ) / ( 3 ^ 2 ) ducks> = 3 ducks.

The `APU` function simply hands a path prefix, assumed to be an
arithmetic expression, over to the implementation language for
evaluation. It isn't realistic to expect to be able to agree a
standard syntax for the arithmetic expressions - one might as well
just accept that implementers will use something (near-) identical to
that employed by the language of implementation. For doing
sophisticated stuff there may well be no option but to invoke this
function even though the price to be paid is that other people won't
be able to run the code without replacing the `APU` invocations. For
simpler stuff, our hope is that the **standard** functions that
follow can be used. If they are sufficient, then they should always
be used in preference to `APU` since they will be portable.