On Sat, May 28, 2022 at 12:55 PM Guido van Rossum <guido@python.org> wrote:

On Sat, May 28, 2022 at 12:11 MRAB 

Names in Python are case-sensitive, yet the string prefixes are
case-/insensitive/.

Why?

IIRC we copied this from C for numeric suffixes  (0l and 0L are the same; also hex digits and presumably 0XA == 0xa) and then copied that for string prefixes without thinking about it much. I guess it’s too late to change.

Given that 99.99% of code uses lower case string prefixes we could change it, it'd just take a longer deprecation cycle - you'd probably want a few releases where the upper case prefixes become an error in files without a `from __future__ import case_sensitive_quote_prefixes` rather than jumping straight from parse time DeprecationWarning to repurposing the uppercase to have a new meaning.  The inertia behind doing that over the course of 5+ years is high.  Implying that we'd need a compelling reason to orchestrate it.  None has sprung up.

-gps


—Guido
--
--Guido (mobile)
_______________________________________________
Python-Dev mailing list -- python-dev@python.org
To unsubscribe send an email to python-dev-leave@python.org
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at https://mail.python.org/archives/list/python-dev@python.org/message/27HLMPDURSAN2YCTFWN6LETWQNY4POX7/
Code of Conduct: http://python.org/psf/codeofconduct/