Python handles globals badly.

Mario Figueiredo marfig at gmx.com
Wed Sep 9 03:09:14 CEST 2015


On 09-09-2015 01:25, Vladimir Ignatov wrote:
>>> It's different from the rest 99.9% of languages for no particular reason.
>>>
>>> ( => perfect example of "design smell" => not a good example to follow)
>>>
>>
>> Assuming that some programming language makes design choices "for no
>> apparent reason" is your first hint you should probably reevaluate your
>> position. People who design programming languages don't tend to throw coins
>> to the air.
>
> Okay, I reevaluated my position and suddenly found that 1-based
> indexes is such a honking great idea!  Now I have another difficulty
> though. How to justify absence of built-in unicode support in a
> language carefully designed in 1993 ?
>

Sarcasm noted.

Because:

a) In 1993, ANSI C (C89) of which Lua had been developed had poor 
multibyte and wide character support. It was only with C95 that this 
stabilized.

b) It didn't needed Unicode support for what it was initially designed 
for; a scripting language to provide programming capabilities to 
data-descriptive and configuration languages.

c) As the years moved Lua eventually implemented support for the storage 
of unicode strings, but doesn't provide any higher level functions 
(including character traversing or searching). This is so because by 
that time, that task had already fallen to the unicode libraries that 
had been developed in the meantime.

Note:
You know, it is a pointless exercise to try and downplay programming 
languages (any programming language) that has proven its worth by being 
generally adopted by the programming community. Adoption is the sign of 
a respected and well designed language. You are just wasting your time. 
Even if you can find here and there some apparent flaw of arguable 
design choice, that will be true of any programming language.


More information about the Python-list mailing list