Lua 5.3 (general discussion)

Post Reply
Sanaki
Posts: 110
Joined: Wed Mar 09, 2011 1:30 am

Lua 5.3 (general discussion)

Post by Sanaki »

Half of you probably cringed when you saw the subject. I know lua upgrades mean work, and no small amount of it. I'm mostly looking for discussion here. The thing that got me looking was a 5.2 feature, specifically the __len metamethod actually functioning on tables, which has long been an annoyance of mine. I also realize 5.2 didn't support enough new features to be worth the upgrade. From what I'm reading, seems like 5.3 just might.

So, I'm curious on the opinions of both the devs and the users, what would make it worth upgrading, and what issues would be significant in doing so?


From what I can tell, these are the main features to be gained from 5.1-5.3:
  • __len and __gc metamethods work on tables finally
  • 5.3 includes basic UTF-8 support, which seems like it could drastically simplify Mudlet's unicode issues
  • Bitwise operators without an external library
  • Goto with ::labels::
  • s:rep now supports adding a separator
  • Environment modifications are simpler and no longer require the debug library (limited usage)
  • ipairs and table functions respect metamethods instead of using raw get/set (-probably- not an incompatibility as well, but could be)
And the main issues we'd run into with backward compatibility are these:
  • The variable args is no longer defined in vararg functions
  • loadstring has become load
  • module has been deprecated (mostly affects included modules)
  • Floats will display as 0.0 rather than just 0 (could be an issue for some tostring usages?)
I've excluded a number of things from both lists that I simply don't see as either an advantage or issue for most users (integers existing, for instance), but you can see the full lists here:
http://www.lua.org/manual/5.2/readme.html#changes
http://www.lua.org/manual/5.2/manual.html#8
http://www.lua.org/manual/5.3/readme.html#changes
http://www.lua.org/manual/5.3/manual.html#8

User avatar
Vadi
Posts: 5035
Joined: Sat Mar 14, 2009 3:13 pm

Re: Lua 5.3 (general discussion)

Post by Vadi »

The main issue with updating is breaking scripts, especially old scripts that nobody is around for to update that people still use. Until we're up against a wall on having to upgrade Lua, there is no need to break people's stuff in my opinion.

I agree from a programmers perspective the new features are nice, but they aren't nice enough to justify the cost of breaking scripts they bring. I think people value their stuff still working from release to release.

Sanaki
Posts: 110
Joined: Wed Mar 09, 2011 1:30 am

Re: Lua 5.3 (general discussion)

Post by Sanaki »

Makes sense. I'll just continue to stare lustfully at it nonetheless.

Post Reply