> As for length(-1), yes, I suppose that is somewhat confusing, but Maxima works hard (see the code in
> mpart, $length, nformat, etc.) to make -1 act like "-"(1) (after all, op(-1) => "-"), so length(-1)
>
> Configurability of things like this complicates the system and makes it harder to write libraries.
I didn't mean to suggest changing length or making it configurable (I was mostly
thinking of new functions). I realize that length, op, subst, etc. rely on this behavior.
Whether, op(-1) => "-" is a good idea is to some extent moot since it can't be changed now.