it is a horribly slow, ugly language, with the most braindead scoping rules (apart from js, of course). The only fast parts of it are libraries written in other languages, because python itself is not up to the task for anything more than glueing code from other, better languages together.
Honestly JS seams saner then python, it’s wierd but rather sane. The only really bad parts of JS are the type coercing == and =! operators which are very broken
For example “” == 0 and 0 == “0” are both true, but “0” == “” is false.
this is an unpopular opinion of mine, but I think lua is, in turn, a saner version of js. Apart from the 1-based indexing (which really isn’t that big a deal imo). But I really love the stackful coroutines.
I haven’t worked with any 1-based indexing languages, but I can’t really see how it could be problematic. The only advantage I see about 0-based indexing is the simplicity in how the memory address is calculated. Just arr + index × sizeof(member) which I think even has its own MOV instruction on x86. But besides that I can’t see any more advantages. With 1-based indexing I see the advantage of the number of elements also being the index of the last element of the array, avoiding off-by-one errors when writing. Though, again, I’ve never used a 1-based indexing language.
it is a horribly slow, ugly language, with the most braindead scoping rules (apart from js, of course). The only fast parts of it are libraries written in other languages, because python itself is not up to the task for anything more than glueing code from other, better languages together.
Honestly JS seams saner then python, it’s wierd but rather sane. The only really bad parts of JS are the type coercing == and =! operators which are very broken
For example “” == 0 and 0 == “0” are both true, but “0” == “” is false.
this is an unpopular opinion of mine, but I think lua is, in turn, a saner version of js. Apart from the 1-based indexing (which really isn’t that big a deal imo). But I really love the stackful coroutines.
I haven’t worked with any 1-based indexing languages, but I can’t really see how it could be problematic. The only advantage I see about 0-based indexing is the simplicity in how the memory address is calculated. Just
arr + index × sizeof(member)
which I think even has its own MOV instruction on x86. But besides that I can’t see any more advantages. With 1-based indexing I see the advantage of the number of elements also being the index of the last element of the array, avoiding off-by-one errors when writing. Though, again, I’ve never used a 1-based indexing language.