[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Upcoming changes in Lua 5.4
- From: Dirk Laurie <dirk.laurie@...>
- Date: Sun, 21 Jan 2018 07:07:56 +0200
I should add that it was deprecated in 5.1 and only
works if the compatibility option is compiled in.
The 'arg' table went out with Lua 5.0.
2018-01-21 7:02 GMT+02:00 Dirk Laurie <dirk.laurie@gmail.com>:
> 2018-01-20 23:46 GMT+02:00 Sean Conner <sean@conman.org>:
>> It was thus said that the Great Benoit Germain once stated:
>>> 2018-01-20 10:43 GMT+01:00 Paige DePol <lual@serfnet.org>:
>>>
>>> > Sean Conner <sean@conman.org> wrote:
>>> >
>>> > > Why not the following?
>>> > >
>>> > > function foo(...)
>>> > > for i = 1 , #... do
>>> > > print("the answer is",...[i])
>>> > > end
>>> > > end
>>> >
>>> >
>>> > As you stated, if the vargs are needed in a table simply using "..." in
>>> > a table constructor could also be used.
>>> >
>>> >
>>> IIR I proposed a patch in that spirit that a while back. Maybe list history
>>> can unearth it. Wasn't production ready though, my knowledge of Lua
>>> internals wasn't good enough.
>>
>> The thread starts here:
>>
>> http://lua-users.org/lists/lua-l/2011-05/msg00034.html
>>
>> Interesting discussion. It appears that PUC took HyperHacker's idea for
>> _ARG. There are also some issues brought up in
>>
>> http://lua-users.org/lists/lua-l/2011-05/msg00107.html
>
> Hpw soon do we forget ...
>
> $ lua5.1
> Lua 5.1.5 Copyright (C) 1994-2012 Lua.org, PUC-Rio
>> function f(...) print(arg[1],arg[2]) end
>> f(10,'foo')
> 10 foo
>>
> $ lua5.2
> Lua 5.2.4 Copyright (C) 1994-2015 Lua.org, PUC-Rio
>> function f(...) print(arg[1],arg[2]) end
>> f(10,'foo')
> stdin:1: attempt to index global 'arg' (a nil value)
> stack traceback:
> stdin:1: in function 'f'
> stdin:1: in main chunk
> [C]: in ?