transpose and ev



Consider:

(%i1) e : transpose(a)$
(%i2) e : subst(a=0,e)$
(%i3) ev(e);
(%o3) transpose(0)
(%i4) ev(e,transpose);
(%o4) 0

Why is (%i4) needed, why isn't (%o3) 0? Afterall

(%i5) f(x) := if integerp(x) then 8 else funmake(f,[x])$
(%i6) f(a)$
(%i7) subst(a=1,%);
(%o7) f(1)
(%i8) ev(%);
(%o8) 8

Is this a noun / verb problem with transpose?

Barton