Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

You can e.g. do

  > stuff = { [0]="one", [1]="two" }
  > print(stuff[0])
  one
Works well; I wrote e.g. https://github.com/rochus-keller/Smalltalk#a-smalltalk-80-in... that way.

EDIT: even this works

  > stuff = { [0]="one", "two", "three" }
  > print(stuff[0]) -> one
  > print(stuff[1]) -> two


> stuff = { [0]="one", "two", "three" }

In this case, is it possible to make iteration start with the element at index 0? Maybe by implementing a custom version of `ipairs`?


When using

  > stuff = { [0]="one", "two", "three" }
  > for k,v in pairs(stuff) do print(v) end
it prints all three elements in the correct order. I rarely use iterators for performance reasons anyway. Instead of ipairs one can use

  > for i=0,#stuff do print(stuff[i]) end




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

Search: