Hacker News new | past | comments | ask | show | jobs | submit login

> The "hash" part doesn't have a defined length. Both parts can be iterated over using the pairs method, which allows you to count the number of elements in them

While true, you should iterate integer-key tables using ipairs and hash tables using pairs.

> No continue statement

Continue doesn't exist? I swear I've used it in Lua 5.1.




There's no continue. Instead, you must use goto.

> While true, you should iterate integer-key tables using ipairs and hash tables using pairs.

In my opinion, this makes Lua's combination of arrays and dictionaries pointless since one must distinguish between them anyway for iteration.


Do you really consider that to be a drawback? How often do you find yourself wanting to iterate a datastructure without knowing whether it's an array or a hash?


ipairs is gone in 5.2


They changed ipairs around a couple times. It's currently in.

Either way you should be using not-pairs. If you construct a table in a weird way you can end up with pairs going out-of-order. ipairs works fine, also "for i=1,#t" works fine.




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: