[Python-3000] PEP 3131 accepted
Leonardo Santagada
santagada at gmail.com
Wed May 23 04:56:23 CEST 2007
Em 22/05/2007, às 19:08, Ka-Ping Yee escreveu:
>
> Currently Python has the property that the character set is a fully
> known quantity. There currently exists a choice of keyboard, a choice
> of editor, and a set of literacy skills that is sufficient for any
> Python code in the world.
>
No, any python code can extend itself to infinity as python is a
turing complete language, we probably don't even have a way to say if
a python program ever stops, so saying that you now posses
capabilities to understand every python program is being a little too
confident on your hacking skillz :)
> There will exist no keyboard that enables one to
> edit any Python program, and probably no editor.
Yes you can, using only a hex editor and simple cut and paste (or
copying hex codes in paper and the re-typing then back) can edit any
python code.
> Today, if a non-English speaker asks you how to learn Python, you can
> answer that question. You can explain Python's syntax and semantics,
> and tell them they need to know the 26 letters of the Roman alphabet.
Have you ever explained that to someone? "You need to know only the
26 letters of the alphabet, plus _+=-{}[]()_0123456789!@#%^*><,./?\"
Really? And i probably missed a lot of stuff in there. The sintax
rules continues to be as simple as ever, identifiers can contain
whatever character the user knows (and all he doesn't know, but then
he is not going to be able to read it anyway).
> PEP 3131 will also cause problems for code review. Because many
> characters have indistinguishable appearances, there will be no
> mapping between what you see when you look at code and what the code
> actually says.
This was already discussed, if your font has the same symbol for
different characters it is not a problem with python, but with the
font. Then there is the different chars in unicode that are really
suposed to be the same, then you need to know the context of the
expression to know their meaning and then again this is not a python
problem, maybe a unicode problem, I like to think this is a cultural
problem, and we have to learn to live with it.
> so that Python can remain a language that one *can*
> fully understand.
I know I'm being picky, but rethink for a little about this, probably
you are afraid of this change, but really there is nothing to be
afraid of. If some code is written in some language you don't
understand or in an encoding that your editor don't know how to
handle you will not be able to edit it. But then again, this is
probably already true with the # _*_ encoding: parameter and with
lots of crappy editors that don't even know how to handle utf-8.
--
Leonardo Santagada
santagada at gmail.com
More information about the Python-3000
mailing list