Why do they punch or slap each other? Because it's what the audience wants and it's funny.
They don't punch or slap each other. Women hit the men and it's just meant to be funny and acceptable. In a show that is otherwise incredibly preachy about morals, it rubs me up the wrong way entirely seeing the hypocrisy on display.
"Make the foundation of this society the man THAT NEVER WOULD... stand up for himself."
And when Rory punches the Doctor? Or when the Doctor does actually deserve it? (snogging Jenny being case in point) what about then?