
malmiteria writes:
Stephen J. Turnbull writes
Every feature means making an arbitrary choice that may or may not be what the programmers wanted.
I don't think that's what greg meant.
I don't either. That's a separate comment that I made about the nature of developing a product (namely, Python itself). Greg wasn't commenting on that, and he may or may not agree with me -- I'm pretty sure he'll *understand* the point. Whether he agrees doesn't matter for the point I was making, which was about how *I* interpret "when faced with uncertainty, refuse to guess."
they can take the time to learn C3 in depth. Which most people don't, so they are left guessing.
So what? It rarely matters, and if it does, it almost never does real harm because people who depend on super in MI contexts generally do know what they're doing and design for success. If it does do harm, somebody was being too tricky for their own good. Sure, the too tricky somebody may be a library author (hello, Django) in which case the person we're worried about is innocent collateral damage. I'm afraid that person is going to have to put out the effort to learn what the MRO is and how it works, or consult someone who already knows. In any case, I don't see evidence that such collateral damage is anything but a theoretical possibility. Steve