On 2013-07-27, Stavros Macrakis <macrakis at alum.mit.edu> wrote:
> I hope you're pulling my leg.
Of course not.
> Although Maxima is a permissive system in many ways -- and that is a good
> thing -- allowing nonsensical operations without warning is bound to cause
> problems. If the user really wants to use the symbol %pi for a variable,
> they can subst something else for it.
It isn't nonsense -- the sense of it is that the symbol is being used in
a limited context with some meaning other than the one that generally
prevails. I claim that plot2d, as do sum and integrate, establishes such
a context. The difficulty, of course, is that Maxima is pretty clumsy
about handling context in general. But it is still useful to daydream
about what Maxima could do in a perfect world.
"Everybody" knows that %pi represents the ratio of circumference to
diameter, but what if you use a more obscure symbol?
What if one share package declares %foo as a constant and another
package uses it as a variable? Whose problem is it to change the symbol?
> Besides the question of inconsistent results, there is the simple pragmatic
> issue that I'm pretty confident that in the vast majority of cases where
> users try to use %i, etc. as variables, that is not actually their intent.
That is precisely the reason to allow it -- the user is, in effect,
declaring that they don't care about the special properties of the symbol.
best
Robert Dodier