[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: table.unpack(...) and the __index metamethod
- From: Tim Hill <drtimhill@...>
- Date: Sat, 14 Jun 2014 13:42:27 -0700
On Jun 14, 2014, at 3:25 AM, Dirk Laurie <dirk.laurie@gmail.com> wrote:
> 2014-06-14 8:27 GMT+02:00 Tim Hill <drtimhill@gmail.com>:
>>
>> Anyway, I’m not tied to this but I still think the OP had
>> a good point. The Lua ref notes in a couple of places
>> the raw accesses are done for speed, but he is correct
>> in noting that you don’t need to sacrifice non-raw access
>> for speed in this case.
>>
>
> The manual (which anyway refers you to other places for
> the decisions behind the design of Lua) only says "For
> performance reasons", true, but that is not the only reason.
>
> You can't have one rule for concat and unpack and another
> rule for insert, remove and sort. But for the mutable table
> functions, semantics becomes a mare's nest unless you
> have raw access.
>
Well you CAN have different rules, whether you want to or not is a different matter. Since table.unpack() doesn’t mutate the table I don’t see any real problem.
As for mutable table functions, I’m not sure I see the mare’s nest you do, but that’s not the issue here.
As I said, the stated reason for not having metamethod access during unpack doesn’t seem to be necessary. I can’t comment on “unstated” reasons, since they are unstated :)
—Tim
- References:
- table.unpack(...) and the __index metamethod, Kalafut, Bennett
- Re: table.unpack(...) and the __index metamethod, Dirk Laurie
- Re: table.unpack(...) and the __index metamethod, Andrew Starks
- Re: table.unpack(...) and the __index metamethod, Tim Hill
- Re: table.unpack(...) and the __index metamethod, Thiago L.
- Re: table.unpack(...) and the __index metamethod, Tim Hill
- Re: table.unpack(...) and the __index metamethod, Thiago L.
- Re: table.unpack(...) and the __index metamethod, Tim Hill
- Re: table.unpack(...) and the __index metamethod, Coda Highland
- Re: table.unpack(...) and the __index metamethod, Tim Hill
- Re: table.unpack(...) and the __index metamethod, Dirk Laurie