kelly,
I pretty much agree with you about PHP. It is useful in
some ways, but once I start programming something of any
real size, I start to miss simple things like how the
compiler is forced to check the syntax of all code, whereas
an interpreted language can let you write some invalid code
in if statement, and you may miss it until it runs.
As for operator overloading in C++, that's a bit like saying
you won't use C because it has some bloated feature like
printf() instead of write(). :-) You don't have to use operator
overloading, but it sure is handy when it makes sense to
use, such as when creating fundamental types like money
values or complex numbers.