If I could offer some humble suggestions in response to this point.....
Perhaps its not as clear cut as smacking > yelling, or whatever. I mean, there is some variability involved. Like, if you're screaming and yelling at your child, that is obviously going to be construed by them as more abusive than a slap on the wrist.
Basically, it depends what you're slapping/smacking them for. Consider this: A toddler is reaching for a $10,000 Ming vase in a store. He is going to knock it over. Mum notices just in time. She firmly says, “NO!” as she slaps the child’s hand and prevents the damage. The bank account is saved. And the child got a solid memory impression that knocking things off shelves is a bad idea. Of course, it would be objectionable if that mum went home and flogged the bejeezus out of that kid for their actions, but you get the idea.
Another point is that in some parenting situations, it can be a split second decision. Consider the above example again. In that particular situation, a swift application of reasonable force was the quickest and most optimal solution to the problem. Perhaps the parent could have yelled, but the kid may not hear, understand or be so startled that they drop the vase. Basically, the use of smacking/physcial force in that situation prevented that uncertainty. It's not always all about the welfare of the child, either.
FInally on the topic that children are too young (in some instances) to 'understand the notions of good and bad', I'm not sure that this is the case most of the time. I mean, even dogs understand that they have done some wrong if you whack 'em on the nose enough for it. Afaik it doesn't take long for a human being to exceed the intelligence level of a dog.
I'm not saying that smacking is acceptable in all cases, far from it, in fact. What I do believe is that it is pointless to apply notions of absolute pacifism to an activity that is as multifaceted as child-rearing.