This is a documentation issue, an error message issue,
and a semantics issue....
binom() is defined as an alias for binomial(), but this is
not mentioned in the documentation. I wanted to use
binom for the explicit form (in terms of factorials) and
when I said
was surprised to get
Warning - you are redefining the MACSYMA command
This redefines the verb form, but not the noun form, so
if you now enter binom(2,x), you get back binomial(2,x),
and NOT 2/((2-x)!*x!). You can only get that using ev
(...,binomial) or by explicitly using verbify(binomial).
This is all rather unintuitive. I think that more "natural"
ways to do things would be either:
1) forbid redefining built-ins;
2) when they're redefined, remove their simplification
properties etc. and have them operate like normal
3) at least remove the alias which makes it function as
the noun form on input