* Eric Brunel (Tue, 15 May 2007 11:51:20 +0200) > On Tue, 15 May 2007 11:25:50 +0200, Thorsten Kampe > <[EMAIL PROTECTED]> wrote: > > * Eric Brunel (Tue, 15 May 2007 10:52:21 +0200) > >> On Tue, 15 May 2007 09:38:38 +0200, Duncan Booth > >> <[EMAIL PROTECTED]> wrote: > >> > Recently there has been quite a bit of publicity about the One Laptop > >> Per > >> > Child project. The XO laptop is just beginning rollout to children and > >> > provides two main programming environments: Squeak and Python. It is > >> an > >> > exciting thought that that soon there will be millions of children in > >> > countries such as Nigeria, Brazil, Uruguay or Nepal[*] who have the > >> > potential to learn to program, but tragic if the Python community is > >> too > >> > arrogant to consider it acceptable to use anything but English and > >> ASCII. > >> > >> You could say the same about Python standard library and keywords then. > > > > You're mixing apples and peaches: identifiers (variable names) are > > part of the user interface for the programmer and free to his > > diposition. > > So what? Does it mean that it's acceptable for the standard library and > keywords to be in English only, but the very same restriction on > user-defined identifiers is out of the question?
Yes. > Why? If I can use my own > language in my identifiers, why can't I write: > > classe MaClasse: > définir __init__(moi_meme, maListe): > moi_meme.monDictionnaire = {} > pour i dans maListe: > moi_meme.monDictionnaire[i] = Rien > > For a French-speaking person, this is far more readable than: Because keywords are not meant meant to extended or manipulated or something similar by the programmers. Keywords are well known and only a limited set of words. That's why you can't use keywords as identifiers. On the contrary identifiers are for the user's disposition. The convention for naming them is: give them the name that makes the most sense in relation to the code. In a lot of cases this will mean english names and ASCII charset. And in some restricted environments this means naming identifiers with terms from the native language. And in this case it makes no sense at all to restrict these people to use ASCII characters to write words in their own language. There really is no difference to allow strings or comments in non- english languages and non-ASCII characters. Thorsten -- http://mail.python.org/mailman/listinfo/python-list