Names of Bessel functions (Re: half integer bessel)



My Macsyma (422) supports bessel_j(order, arg), bessel_j[order](arg),
and bessel(arg,order). Weird. For Bessel functions of the second kind,
Macsyma only supports bessel_y[order](arg).  Maxima supports
bessel_j(arg, order), bessel_j[order](arg), and bessel(arg,order).

(a) I generally expect the "main" argument to be the last. The
Macsyma bessel_j function worked this way. How much trouble would
it cause to switch uniformly to (order, arg)?

(b) I think we should dump support for the functions i0, i1, in,
j0, j1, jn, and bessel.  How smart is it to have a function named in?

(c) I'm having trouble with a translated subscripted function. I
translated

buddy[n](x) := x^n;

to Lisp and got

(PROGN
 (DEFPROP |$buddy| T TRANSLATED)
 (ADD2LNC '|$buddy| $PROPS)
 (DEFMTRFUN (|$buddy| $ANY MDEFINE NIL T)
            (|$n|)
            (DECLARE (SPECIAL |$n|))
            (M-TLAMBDA&ENV ((|$x|) (|$n|))
                           (DECLARE (SPECIAL |$x|))
                           (POWER |$x| |$n|))))

I can't get the translated function to evaluate.  Understanding
this Lisp code is beyond me.  Is there a problem with translating
subscripted functions?

Barton