I don't think "scarring them for life" is the point. Of course you won't. But one can be very firm and strict without resorting to name-calling. I think it is a question of modeling appropriate behavior and creating an atmosphere of respect.
This. It is possible to have rules, structure, expectations, and discipline that allow you to address a behavior that you want to stop, without calling your child names. I will admit that, just like every other person on the planet, my kid has acted like a jerk on occasion. Do tell him he's a jerk? No, because I don't think he is. I think he's a child who made a wrong choice and I want him to behave better the next time. It doesn't mean I don't discipline or that I sugarcoat everything and spend hours discussing our feelings about every little thing, but I address the behavior rather than using a personal insult.
When you call a child names, it is hard to take it back. They remember it and internalize it. "I don't like the way you're behaving" is something they can use - they can change the behavior, say they're sorry, etc. "You are a cry-baby" is telling them that's who they are. My kids are not allowed to call each other or other children names, so why should I be allowed to do it to them?