Label vs. index subscript



On 2013-11-10, Jon Robinson <jonwrobinson at verizon.net> wrote:

> Eq01: %rho[rta](%lambda):='product(%rho[j](%lambda),j,1,4);

> Eq02: %rho[ham](%theta,%lambda):=rho[5](%lambda)*RVS(%theta,B);

> Eq03: %rho[aft](%lambda):='product(%rho[j](%lambda),j,6,N[op]);

> Eq04a: %rho[sys](%theta,%lambda):=('product(rho[j](%lambda),j,1,N[op]))*RVS(%theta,B);

> Eq04b: %rho[fix](%lambda):=%rho[5](%lambda)*%rho[aft](%lambda)*%rho[rta](%lambda);

> Eq04c: %rho[sys](%theta,%lambda):=rho[fix](%lambda)*RVS(%theta,B);

Jon, I've considered this again and I think you can get the intended
result as follows.

    %rho [rta] : lambda ([%lambda], ...);
    %rho [ham] : lambda ([%theta, %lambda], ...);
    %rho [aft] : lambda ([%lambda], ...);

That is, let %rho be a hash table (a so-called "undeclared array" in
Maxima) and let the values of the table be lambda expressions (unnamed
functions) with varying numbers of arguments. Then you can call the
various functions as you are now -- %rho[foo](x) or %rho[bar](x, y) or
whatever.

best

Robert Dodier