[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Lua next version
- From: bb <bblochl@...>
- Date: Sun, 21 Jun 2009 20:38:54 +0200
There is a well known weakness in the check of the length of tables, or
at least there is no real and safe check of the length at all.
In a posting I found the description for that. "This is not a bug, just
confusing behaviour of the length operator (which should be called "give
me a free table index minus one "-operator instead)" Source: Subject:
Re: The table length is not correct, From: Kristofer Karlsson
<kristofer.karlsson@...>, Date: Fri, 6 Mar 2009 13:30:51 +0100
And the Lua manual describes the length function as follows:
The length of a table t is defined to be any integer index n such that
t[n] is not nil and t[n+1] is nil; moreover, if t is nil, n can be
zero. For a regular array, with non-nil values from 1 to a given n, its
length is exactly that n, the index of its last value. If the array has
"holes" (that is, nil values between other non-nil values), then #t can
be any of the indices that directly precedes a nil value (that is, it
may consider any such nil value as the end of the array).
Is`nt it possible to tackle that problem in the new version? I do not
know how severe such a change would be for the Lua kernel.