Does Maxima have a function that is equivalent to safe_op(e) := block([inflag : true], if mapatom(e) then false else op(e)); If not, I think we should --- if not mapatom(e) then op(e) is frequent and tiresome. Barton