| 1 | -- example of for with generator functions |
| 2 | |
| 3 | function 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) |
| 11 | end |
| 12 | |
| 13 | for i in generatefib(1000) do print(i) end |