The distinction between mathematical functions whose behavior is determined
by simplification and programming functions whose behavior is determined by
evaluation is critical in Maxima, but we have not bee systematic about our
vocabulary. Of course, it doesn't help that some Maxima symbols (like
integrate) represent both a simplifying function (noun) and a programming
function (verb).
Could we try to converge on standard terminology? Some possibilities are:
Simplifying Evaluating
(disable with simp:false) (disable with '(
... ) )
mathematical function programming function
simplifying function executing
function
function
subroutine / routine / command / operation
The first two seem clumsy because long.
Plain "function" seems appropriate for the mathematical kind.
Subroutine and Routine seem old-fashioned.
Operation is ambiguous with operat<or> e.g. "+", which is actually a
simplifying function.
My personal preference would be something like
Short form: function command
Long form: simplifying function programming command
Normally, one would use the short form, but the long form might be useful in
some didactic contexts.
-s