On 11/11/2021 14.41, Matt del Valle wrote:
So the scope of my suggestion is as follows:
- lowercase types become PascalCase (e.g., `str` -> `Str`,
`collections.defaultdict` -> `collections.DefaultDict`)
- lowercase attributes/functions/methods become snake_case (no changes
for names that only contain a single word, so `str.lower()` would be
unaffected, but `str.removeprefix()` would get the alias
`str.remove_prefix()`)
- pep8 and the python docs are updated to state that the pep8-compliant
forms of stdlib names should be strongly preferred over the legacy
names, and that IDEs and linters should include (configurable?) weak
warnings to discourage the use of legacy-cased stdlib names
- `help()` would be special-cased for builtin types to no longer display
any current non-pep8-compliant names, and the python docs would also no
longer show them, instead only making a note at the top of the page as
with the `threading` module.
Given the horrors of the python 2.7 schism I don't think there's any
rush to officially deprecate or remove the current non-pep8 names at
all. I think that's the sort of thing that can happily and fully be
kicked down the road.
If we add aliases and they see widespread adoption to the point where
the non-pep8 forms are barely ever even seen out in the wild then maybe
in 10 or 20 years time when the steering council is deliberating on a
new major python version they can consider rolling the removal of legacy
badly-cased names into it. And if not then no big deal.
Adding new APIs or replacing existing APIs for PEP 8 style-compliance
would be a violation of PEP 8. The PEP 8 document states that
consistency, readability, and backwards compatibility are more important
than naming and style conventions.
By **not** applying PEP 8 style to existing code, CPython stays PEP 8
compliant.
https://www.python.org/dev/peps/pep-0008/#a-foolish-consistency-is-the-hobgoblin-of-little-minds
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at
https://mail.python.org/archives/list/python-ideas@python.org/message/QBNMSU6AI2UUZ5ZEFDM7SD5VOGZSZ27B/
Code of Conduct: http://python.org/psf/codeofconduct/