[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Infinity as index
- From: Dirk Laurie <dirk.laurie@...>
- Date: Wed, 23 Apr 2014 14:26:22 +0200
2014-04-23 11:53 GMT+02:00 Lukas Prokop <admin@lukas-prokop.at>:
> Now my point is that we can use this as indices. My intuition tells me the
> following:
>
> -nan - behaves like a nil as index or throws error (number expected)
> inf - behaves like the end of a sequence as index
> -inf - behaves like the beginning of a sequence as index
>From the manual:
> The type table implements associative arrays, that is, arrays that can be
> indexed not only with numbers, but with any Lua value except nil and NaN.
This is pretty definite. tbl[inf] and tbl[-inf] are allowed. They are definitely
allowed as lvalues, and the following (highly inefficient) algorithm will
find them (it will not find nan).
function index(tbl,j) for k,v in pairs(tbl) if k==j then return v end end end
IMHO it is a bug that tbl[inf] and tbl[-inf] does not work. Too late
for Lua 5.1,
but this could still make the final Lua 5.2 release.