Substituting a value for a differential function



On 3/28/12, Barton Willis <willisb at unk.edu> wrote:

> Putative bug:
>
>    (%i1) (a : b, b : c, c : d)$
>
> Should be b[x], not d[x], I think:
>
>    (%i2) a[x];
>    (%o2) d[x]

Not a bug, but a misfeature; the code works as intended,
but the intent is questionable.

I looked into this, and there is a loop in MEVAL1 which reevaluates
the name of the function. The code is pretty convoluted -- I'm guessing
it could be simplified a lot.

I don't know the motivation for reevaluating function names.
It would be interesting to disable that somehow to find out what,
if anything, in existing Maxima code (e.g. share) depends on it.

best

Robert Dodier