[Python-Dev] Divorcing str and unicode (no more implicitconversions). (original) (raw)

"Martin v. Löwis" martin at v.loewis.de
Thu Oct 27 20:06:43 CEST 2005


Greg Ewing wrote:

I still think this is a much worse potential problem than that of "l" vs "1", etc. It's reasonable to adopt the practice of never using "l" as a single letter identifier, for example. But it would be unreasonable to ban the use of "E" as an identifier on the grounds that someone somewhere might confuse it with a capital epsilon.

As a style guide, people should use single-letter identifiers only for local variables. If they follow the guideline, it should be easy to tell whether such an identifier is Latin or Greek (if everything else in the function is Latin, the E likely is as well).

An alternative would be to identify such confusable letters in the various alphabets and define them to be equivalent.

pylint could check for such things (although I very much doubt it would have any hits in the next 10 years).

And beyond the issue of alphabets there's also the question of whether accented characters should be considered distinct. I can see quite a few holy flame wars erupting over that...

For that, there is the Unicode TR that precisely defines how this should be done. People should then have their wars with the Unicode consortium.

Regards, Martin



More information about the Python-Dev mailing list