[Python-3000] Support for PEP 3131
"Martin v. Löwis"
martin at v.loewis.de
Tue Jun 12 06:59:31 CEST 2007
>> or if I upgrade to the next Python version, assuming the default is
>> to restrict identifiers.
> That would only happen if the default changes to a more strict rule. If we start
> with ASCII only, this is unlikely to ever happen!
It will likely happen. In 3.0, I change the installation default to
allow for the characters I want. Then I install 3.1, and my code stops
working. I have to remember how to change the installation default
again, and locate the place in the 3.1 installation where I need to
change the same setting (assuming it is a per-installation setting).
In any case, global (application-wide) flags for restricting identifiers
already have been ruled out as solutions to whatever the problem is they
try to solve.
> my problem is then: what happens if the reader does not speak the same language
> as the author of the code? Right now, if I come across python code written in a
> language I don't speak, I can still try to make sense of it. Sure, I may have to
> do without the comments, sure, I may not understand what the identifier names
> mean. But I can still follow the instructions flow and try to figure out what
> happens. With non-ASCII identifiers, I cannot do that because I cannot recognise
> the identifiers from one another.
I think it was Ping who demonstrated that with ASCII-only identifiers,
you may not be able to reasonably analyze the code, either, so
restricting to ASCII is no *guarantee* that you can maintain the
> Well, I have not followed acurately the discussion about security risks.
> However, I see a much simpler risk: the risk that I come across with code that
> is technically open source, but that I can't even debug in case of need because
> I cannot make sense of it. This would reduce the usefulness of such code, and
> cause fragmentation for the community.
How do you know this hasn't happened already? I'm *fairly* certain that
the community is *already* fragmented, and that there are open source
developers in other parts of the world writing Python programs that will
just never show up in your part of the world, because of language
and culture barriers.
In any case, the PEP advises that international projects should
constrain themselves to ASCII and English; beyond that advise, I
think there should be freedom of choice. It is not the interpreter's
job to be language police.
More information about the Python-3000