QUOTE(polymath @ 4 May, 2008 - 02:23 PM)

I agree that style is arbitrary, though my interpretation of good style is code that is as concise as possible and as easy to follow as possible. This can include how you go about solving your problems presented, comments, structure, identifiers, indentation, anything.
I guess that's where I disagree. Style is not implementation; implementation includes how the problem is solved. Style involves formatting, naming, and so on. It's prefectly arbitrary.
Some teams try to enforce implementation requirements; using anonymous global namespaces instead of statics, for instance; or using exceptions or not. these vague admonitions generally have reasons based on some requirements of the architecture. For example, the memory manager can't handle exceptions, or an analysis tool gets sick when there are too many static variables.
Beyond that, I've never worked on a team that did any real enforcement for implementation rationale. It would be an interesting experiment--it would seem like it wouldn't result in any productivity gain, though, does it?