lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


I am confused on why you think you can't:

Lua 5.3.4  Copyright (C) 1994-2017 Lua.org, PUC-Rio
> function one() return 1 end
> function two() return 2 end
> function ten() return 10 end
> for i=one(), ten(), two() do print(i) end
1
3
5
7
9
>

On Tue, Jan 30, 2018 at 7:08 AM Soni "They/Them" L. <fakedme@gmail.com> wrote:


On 2018-01-30 11:04 AM, Dirk Laurie wrote:
> 2018-01-30 14:55 GMT+02:00 Soni "They/Them" L. <fakedme@gmail.com>:
>>
>> On 2018-01-30 10:51 AM, Dirk Laurie wrote:
>>> 2018-01-30 14:23 GMT+02:00 Soni "They/Them" L. <fakedme@gmail.com>:
>>>>
>>>> On 2018-01-30 06:58 AM, Francisco Olarte wrote:
>>>>> On Tue, Jan 30, 2018 at 1:11 AM, Soni "They/Them" L. <fakedme@gmail.com>
>>>>> wrote:
>>>>> ...
>>>>>> Also, rationals are still numbers. They're just not "Lua numbers"
>>>>>> (objects
>>>>>> with type(x) == "number"). Any language with operator overloading (e.g.
>>>>>> C++)
>>>>>> lets me have numeric for with rationals. Except Lua. (Python doesn't
>>>>>> have
>>>>>> numeric for at all so it doesn't count.)
>>>>> C++ does not have numeric for, so it doesn't count either.
>>>>>
>>>>> Francisco Olarte.
>>>>>
>>>> for (int i = 0; i < 100; i++) { printf("%d\n", i); }
>>>>
>>>> Looks like it does, it's just more flexible than Lua's.
>>> No 'for' is more flexible than Lua's.
>>>
>>> for a,b,c,as_many_as_you_like in myiter(anything) do
>>> end
>>>
>> Sorry, C++'s numeric for is more flexible than Lua, because it gives you
>> more control over the iteration.
>>
>> You can also use rational objects which overload < and ++ in C++ numeric
>> fors, while you can't in Lua even with __add and __lt.
> C/C++ does not have a numeric for, it only has a generic for.
>
> for (statement_list_1;statement_list_2;statement_list_3) do statement;
>
> Nothing numeric about that.
>
> No restriction anywhere, although if statement_list_2 is just an
> assignment most compilers will recommend that you put it in
> parentheses.
>

We can argue about this all day but if I can do, in C++

for (type i = min; i < max; i += step) {
}

Why can't I do

for i=min,max,step do
end

in Lua? They should be equivalent.

--
Disclaimer: these emails may be made public at any given time, with or without reason. If you don't agree with this, DO NOT REPLY.


--
--
Ryan | Charles <vandor2012@gmail.com>
Software Developer / System Administrator
https://hashbang.sh