Certainly $(-3)^{-3}$ has a well-defined value.
The basic problem here is that an expression such as "$x^x$" is actually not enough to define a function. One also needs to a specification of which domain the values of $x$ can be drawn from.
Many school systems place great value on teaching their students to find the greatest subset of the reals for which the expression has a value, and call that the domain of the expression, but it is not a universal mathematical law that this has to be true. (In fact, mathematicians tend to scoff at the idea that $\mathbb R$ should have such a favored status that it is the largest subset of it that becomes "the" domain of an expression).
What computer mathematics systems such as the ones you've tried do when you present them with a naked expression such as $x^x$ is to try to guess which domain you could have had in mind for them. Rather than the largest set of numbers that the expression makes sense for, they usually try to guess at the nicest set, for some not really well defined sense of "nicest". And sets such as $(0,\infty)$ is generally considered more likely than $(0,\infty)\cup\mathbb Z$, if only because the union between a continuous set and a discrete one looks like there will be few or no interesting properties in common between the two parts.
However, mathematically you're certainly free to define a function $f$ such that $f(x)=x^x$ for $x\in(0,\infty)\cup\mathbb Z$ if you want to.