[Python-3000] PEP: Supporting Non-ASCII Identifiers (original) (raw)

"Martin v. Löwis" martin at v.loewis.de
Tue May 1 18:14:10 CEST 2007


Python code is written by many people in the world who are not familiar with the English language, or even well-acquainted with the Latin writing system. [snip] That makes absolutely no sense. You mean to tell me that people write Python without being able to understand any of the language's keywords, builtin functions, standard library or documentation?

Exactly so. They have natural-language of the documentation, by means of books and literal translation of the Python documentation, and they don't try to grasp the meaning of the identifiers (e.g. I only yesterday learned what a "hub" is, as in "hub-and-spoke". I accepted it to mean "networking device that forwards packets" before. Many people around here think that ASCII is pronounced A-S-C-two, i.e. II stands for a Roman numeral - and these people did have some English training.)

I still don't understand why the "no operation" statement is called "pass" - it's not the opposite of "fail", and seems to have no relationship to "can you pass me the butter, please?".

The point is that even though many people get some passive knowledge of English over time, they have a hard time with active usage of the language. So when they need to come up with identifiers and put comments into the code, they use their first language. See the comments for PEP 328 in

http://python.com.ua/ru/news/2006/09/20/nakonets-to-vyishel-python-25/

(I'm sure I can also find code with transliterated identifiers in the net, but finding that is bit more tedious, so I would prefer if you trust me on that).

Regards, Martin



More information about the Python-3000 mailing list