It actually depends with which kind of punishment exactly. Some punishment end up hurting students instead of making them learn a lesson so that they don't end up repeating the same mistakes they'd done before. For instance, there's a certain schoo i know in which when a student does mistake, he's given a sand paper then told to scrub the back of a tree that's very rough until its smooth. Surely, which kind of a punishment is this, will it benefit the student in any way?
What I think is, for instance the student (s) has failed in an exam, instead of being canned or even expelled from the scho, the teachers should negotiate with the parents so that the kids could remain for three more weeks while others go home for the holiday. This students that have remained in school will hence undergo a thorough tutoring and am pretty sure the kids will get something out of the tuition. Next time, these students will really work hard so that they don't find themselves in such a situation some other time again.