this is my attempt at doing project euler 18 with generators!
import generators as g
@g.started
def remember_two():
a,b=None,None
while 1:
a = yield b,a
b = yield a,b
data=[
[6],
[2,3],
[8,6,2]
]
for row in data:
print(repr(row))
window_of_two=remember_two()
for row in data:
lower, upper = window_of_two.send(row)
print('==================')
print('upper', upper)
print('lower', lower)
if upper!=None:
tmp=[]
for i in g.chain(g.map(zip(upper, g.window(lower,2)), (lambda i:(i[0],i[1][0])), (lambda i:(i[0],i[1][1])))):
print(i, sum(i))
tmp.append(sum(i))
print('tmp', tmp)