2

Here's a function that tries to take a function as argument, and return a function as a value. However, when I try to apply the return value, it seems to stay unevaluated:

f(F) := lambda([c], F(c));
g(t) := t*t;
blah: f(g);
blah(y);

results in:

F(y)

F is the name of an argument of f, how is it visible outside of the definition of f?

I'd like

diff(blah(y), y):

to return 2*y, but now it's just returning d/dy F(y).

Martin C. Martin
  • 3,565
  • 3
  • 29
  • 36
  • 1
    Take a look at this other question: https://stackoverflow.com/questions/52680489/analog-of-maple-unapply-or-mathematica-function-in-maxima/52681477#52681477 Perhaps the `evlambda` function described there can be helpful to you. – Robert Dodier Jul 15 '20 at 18:08

0 Answers0