On 5/2/2014 6:29 PM, Terry Reedy wrote:
On 5/2/2014 3:34 PM, Roman Inflianskas wrote:
It's really useful that python 3 allows me to use some Unicode symbols (as specified inhttps://docs.python.org/3.4/reference/lexical_analysis.html#identifiers),
especially Greek symbols for mathematical programs. But when I write mathematical program with lots of indices I would like to use symbols from block "Superscripts and Subscripts" (as id_continue), for example:
⁴₂₍₎
I believe 'other numbers' are intentionally omitted.
I don't see any problems with allowing yet another subset of Unicode symbols. In Julia, for example, I can use them without problems.
If the rules for identifiers are expanded, any code the uses newly allowed names cannot be backported or run on previous versions. In contracted, the opposite problem occurs. I do not think they should be changed either way without a strong cause.
From 2.3. Identifiers and keywords "The syntax of identifiers in Python is based on the Unicode standard annex UAX-31, with elaboration and changes as defined below; see also PEP 3131 for further details."
In other words, we use the standard with a few intentional modifications. The 2.x ascii rules were the same or very similar as in other languages (such as C). The 3.x rule are similar to other languages that follow the same standard. There is a benefit to this. -- Terry Jan Reedy