Luiz Henrique de Figueiredo
unread,
Dec 22, 2025, 9:10:16 AM (10 days ago) 12/22/25
to lua-l
Marc Balmer
unread,
Dec 22, 2025, 4:34:40 PM (10 days ago) 12/22/25
to lu...@googlegroups.com, lua-l
Thank you and the whole team for this christmas present!
- mb
Lua 5.5.0 has been frozen and is now the current version of Lua.
Thijs Schreijer
unread,
Dec 22, 2025, 4:40:44 PM (10 days ago) 12/22/25
to lu...@googlegroups.com
On Mon, 22 Dec 2025, at 15:10, Luiz Henrique de Figueiredo wrote:
Lua 5.5.0 has been frozen and is now the current version of Lua.
Congrats to the whole team on the new release!
Thijs
Bas Groothedde
unread,
Dec 22, 2025, 5:13:30 PM (10 days ago) 12/22/25
to lu...@googlegroups.com
> On 22 Dec 2025, at 15:10, Luiz Henrique de Figueiredo <l...@tecgraf.puc-rio.br> wrote:
>
> Lua 5.5.0 has been frozen and is now the current version of Lua.
Thank you and congratulations. Happy holidays!
~b
Andrew Starks
unread,
Dec 22, 2025, 8:41:10 PM (10 days ago) 12/22/25
to lu...@googlegroups.com
--
You received this message because you are subscribed to the Google Groups "lua-l" group.
To unsubscribe from this group and stop receiving emails from it, send an email to lua-l+un...@googlegroups.com.
Jason Lethbridge
unread,
Dec 22, 2025, 9:46:56 PM (10 days ago) 12/22/25
to lu...@googlegroups.com
Błażej Roszkowski
unread,
Dec 23, 2025, 4:18:01 AM (10 days ago) 12/23/25
to lua-l
Is " large arrays use about 60% less memory" right?
Lua 5.4 and earlier stored arrays as 8 byte value, 1 byte type
tag, and 7 byte padding, so 16 bytes per value.
Lua 5.5 splits those and packs them tightly, so the 7 byte padding
is gone, so it's just 8 + 1 = 9 bytes per value.
This means 5.5 has 43% (7 div 16) smaller arrays, so
they take 57% of space they did before, not 60% less.
And thank you for this release - B.R.
blogdron (BLOGDRON)
unread,
Dec 23, 2025, 9:29:56 AM (9 days ago) 12/23/25
to lua-l
Thanks all who develop and/or use Lua! Congratulations! ^.^
вторник, 23 декабря 2025 г. в 12:18:01 UTC+3, Błażej Roszkowski:
Martin Eden
unread,
Dec 24, 2025, 3:46:57 AM (9 days ago) 12/24/25
to lu...@googlegroups.com
On 2025-12-22 16:10, Luiz Henrique de Figueiredo wrote:
> Lua 5.5.0 has been frozen and is now the current version of Lua.
Congratulations with release and merry Christmas!
-- Martin
Luau Project
unread,
Dec 25, 2025, 6:53:57 PM (7 days ago) 12/25/25
to lua-l
Hi Lua Team,
In the part of the manual related to
changes ( https://www.lua.org/manual/5.5/readme.html#changes ),
it says:
> for-loop variables are read only
I performed a few tests on that
matter with Lua 5.5 on
Linux + Windows, and I have a doubt.
1. Executing the following statement:
lua -e "for i, v in ipairs({1}) do i = 3 end"
it throws the error
`lua: (command line):1: attempt to assign to const variable 'i'`
2. Executing this statement:
lua -e "for i, v in ipairs({1}) do v = 3 end"
it does not throw any error.
Then I thought: hmm, probably
it assigns the value back.
However, the next test shows
it does not.
3. Executing this statement:
lua -e "local t = {1}; for i, v in ipairs(t) do v = 3 end; print(t[1]);"
prints 1, showing that the
t[1] value didn't change.
So, my question is: according to
the manual
> for-loop variables are read only
the second part above (2.) shouldn't throw?
云风 Cloud Wu
unread,
Dec 25, 2025, 7:17:44 PM (7 days ago) 12/25/25
to lu...@googlegroups.com
Luau Project <luau.p...@gmail.com> 于2025年12月26日周五 07:54写道:
>
> Hi Lua Team,
>
> 2. Executing this statement:
>
> lua -e "for i, v in ipairs({1}) do v = 3 end"
>
> it does not throw any error.
> Then I thought: hmm, probably
> it assigns the value back.
> However, the next test shows
> it does not.
>
> 3. Executing this statement:
>
> lua -e "local t = {1}; for i, v in ipairs(t) do v = 3 end; print(t[1]);"
>
> prints 1, showing that the
> t[1] value didn't change.
>
> So, my question is: according to
> the manual
>
> > for-loop variables are read only
>
> the second part above (2.) shouldn't throw?
The manual says "The first of these variables is the control variable,
which is a read-only (const) variable."
So the "i" is ready-only (control variable) , but the "v" is not.
Martin Eden
unread,
Dec 26, 2025, 9:57:02 AM (6 days ago) 12/26/25
to lu...@googlegroups.com
On 2025-12-26 02:17, 云风 Cloud Wu wrote:
> The manual says "The first of these variables is the control variable,
> which is a read-only (const) variable."
>
> So the "i" is ready-only (control variable) , but the "v" is not.
Damn, I just wanted to paste same quote from refman. You're ~2 minutes
faster
[[
A *for* statement like
for/var_1/, ···,/var_n/ in/explist/ do/body/ end
works as follows.
The names /var_i/ declare loop variables local to the loop body. The
first of these variables is the /control variable/, which is a read-only
(|const|) variable.
]]
-- Martin
Luau Project
unread,
Dec 26, 2025, 12:28:17 PM (6 days ago) 12/26/25
to lu...@googlegroups.com
> The manual says "The first of these variables is the control variable,
> which is a read-only (const) variable."
>
> So the "i" is ready-only (control variable) , but the "v" is not.
Thank you all for the insightful answers.
Scott Morgan
unread,
Dec 26, 2025, 10:49:51 PM (6 days ago) 12/26/25
to lu...@googlegroups.com
On 25/12/2025 23:53, Luau Project wrote:
> 3. Executing this statement:
>
> lua -e "local t = {1}; for i, v in ipairs(t) do v = 3 end;
> print(t[1]);"
>
> prints 1, showing that the
> t[1] value didn't change.
That's because v is a variable holding a value, not a reference.
Similarly:
t = { 1 }
a = t[1]
a = 2
print(t[1], a)
-- 1 2
Scott