> You could say that sum(expression, i, 1, 10) means exactly the same as my notation with sum(lambda([i],expression),1,10).
Yes, I believe this is the correct approach. Things like limit(a,b,c)
should be treated as syntactic sugar for limit(lambda([b],a),c). The
internal form should actually use the lambda-expression; the form
limit(a,b,c) can still be used on output. The advantage of actually
using the lambda-expression internally is that we have some hope of
processing this consistently across the whole system -- though of
course it will take some work.
The devil is in the details, though, and I'm trying to work them
out.... The big problem is of course that Maxima's current dynamic
scope rules make lambda expressions have peculiar behavior. The other
problem is how to balance user convenience with cleanness.
-s