![[PukiWiki] [PukiWiki]](image/pukiwiki.png) 
 function values (t)
    local i=0
    return function ()
        i=i+1
        return t[i]
    end
end
t = {10,20,30}
for element in values(t) do
    print(element)
end
for element in values(t) do
    print(element)
end
このように2回繰り返しても、ちゃんとfor in 単位でクロージャがリセットされるので期待通りの挙動となる。t = {10,20,30}
vt = values(t)
for element in vt do
    print(element)
end
for element in vt do
    print(element)
end