> I propose that exp(1)^3 should be displayed with parenthesis around %e.
I oppose. Even though you would make %e^3 distinguishable from exp(3) or
exp(1)^3, I oppose against adding parentheses where none are needed.
Parentheses should be added by the formatting routine and (if possible)
not be stored in the OutputForm datastructure itself.
> One approach will be changing
> exp(1)::OUTFORM from %e to (EXP 1)
> exp(n)::OUTFORM from (^ %e n) to (EXP n)
I would actually not really be against showing exp(n) as "exp(n)" in the
output. But as Waldek said %e and exp(1) are only two different
representations of the same thing.
And we also have this...
%%% (14) -> operator first kernels (%e^n)
(14) exp
Type: BasicOperator
%%% (15) -> argument first kernels (%e^n)
(15) [n]
Type: List(Expression(Integer))
%%% (16) -> argument first kernels (exp n)
(16) [n]
Type: List(Expression(Integer))
%%% (17) -> operator first kernels (exp n)
(17) exp
Type: BasicOperator
%%% (20) -> kernels (exp(1)^n)
n
(20) [%e ]
Type: List(Kernel(Expression(Integer)))
%%% (21) -> kernels (exp(n))
n
(21) [%e ]
Type: List(Kernel(Expression(Integer)))
Do you see exp(1)^3 and exp(3) treated differently somewhere? Or even
stored differently?
Ralf