
from __future__ import generators
import sys

def fib():
   (a,b) = (0,1)
   while 1:
      yield b  # identifies fib() as a generator
      oldb = b
      b = a + b;
      a = oldb

def main():
   for i in fib():  # output of calls to generator considered a list
      if i > 100: break  # would go forever without this
      print i

if __name__ == '__main__':
   main()

