1-- example of for with generator functions
2
3function generatefib (n)
4  return coroutine.wrap(function ()
5    local a,b = 1, 1
6    while a <= n do
7      coroutine.yield(a)
8      a, b = b, a+b
9    end
10  end)
11end
12
13for i in generatefib(1000) do print(i) end
14