function parameters



Hi,

Is it a bug, or am I doing something wrong?

(%i1) myfun(a) := ev(a);
(%o1)                          myfun(a) := ev(a)
(%i2) myfun(a+b);
(%o2)                               2 b + a

Obviously, "a" evaluates to "a+b" twice in this example. Why does this happen? Function 
parameter should evaluate to its value only once, regardless of what its name is.

Best regards,
Mikhail Khokhlov