[Python-3000] Support for PEP 3131
Stephen J. Turnbull
turnbull at sk.tsukuba.ac.jp
Tue Jun 12 14:04:35 CEST 2007
Ka-Ping Yee writes:
> On Tue, 12 Jun 2007, Stephen J. Turnbull wrote:
> > It seems to me that rather than *impose* restrictions on third
> > parties, the sensible thing to do is to provide those restrictions to
> > those who want them.
> Hang on a second. No one is *imposing* new restrictions. Python
> uses ASCII-only identifiers today and has always been that way.
Who said "new"? PEP 3131 is approved, so "reimpose", if you like.
But I don't want it, and definitely consider it an imposition, and
have done so since the discussion of PEP 263.
> The big missing concern from your list is that the vast majority
> won't *know* that the character set is changing on them, so they
> won't know that they need to do any of these things.
Such restrictions seem unacceptable to both Guido and Martin; the
*only* point of this proposal is to see if there's a way we can
achieve Jim's goal of no change to his best current practice without a
global setting unacceptable to Guido.
If you want to use this technology to change the default, fine, but
it's not part of my proposal.
> > 1. PEP 263 codecs delegate the decision to the code's author;
> I'd be okay with this if [...]
[I'm not sure what you mean; I've deliberately edited to show the
meaning I took.]
I'm not OK with it. Auditing by definition is under control of the
user, not the source code. I don't see a real point in doing this if
the user or site can't enforce auditing, since they *can* do so by
explicitly running an external utility.
> > 2. The auditor would have to duplicate the work of the parser, and
> > might get it wrong.
> > 3. Parsing is expensive in time and other resources.
> Both of these come down to the wastefulness of redoing something
> that the Python interpreter itself already knows how to do very
> well, and is, in some sense by definition, the authority on how
> to do it correctly.
True. However, Guido has already indicated that he favors some
approach like this, as an external lint utility. My question is how
to minimize impact on users who desire flexible automatic auditing.
More information about the Python-3000