Наказывать нужно. Если сцена случилась в магазине уведите ребенка. Дома обязательно обговорите ситуацию.
Личное мнение: без шлепанья еще ни один нормальный человек не вырос. Не битья! А именно шлепанья, где не боль, а обида.
Был случай, у знакомой мальчик в школе украл линейку. Папа его взгрел не по детски. Теперь уже взрослый человек, говорит, что помнит науку, как "отче наш".
Так что дедушка Спок не прав!