Flexibility of something is the fact that you are not forced to use it in some unnatural way. I'd say that most PEPs related to core Python are flexible, but I am not sure about the rest. PEPs are made to resolve ambiguities. But it doesn't mean limiting flexibility and setting hard limitation. What is hard limitation standard? For example, marking version you can not parse as pre-release. PIP actually does this, which prevents all packages with versions that are not comply with "versioning PEP" from installing. "pre-release" is a feature. Inflexible, tempting to guess, getting in a way, implicit and confusing. I just filled three or four bugs about it. How come that it appeared at all? Well, because it is useful. In some cases. But the problem is that it affects you even if you don't need it. "Make it optional" is a very good principle for those cases when you can not predict how users are going to use your feature and if they need it at all. -- anatoly t.