我想在將前面加上一個起始的序列,目前我想到的方法是這樣:
type Sequence
seq_generator
end
function (s::Sequence)(f::Function, g::Function)
d = consume(s.seq)
return d(f, g)
end
function seq(s)
function start()
produce()
for x in s
produce(Disposible(x))
end
end
return Sequence(init_task(start))
end
測試
t6 = seq([1,2,3,4,5])
t6(map, x -> x+5)(map, x -> x*2)
t6(map, x -> x+5)(map, x -> x*2)
t6(map, x -> x+5)(map, x -> x*2)
t6(map, x -> x+5)(map, x -> x*2)
t6(map, x -> x+5)(map, x -> x*2)
t6(map, x -> x+5)(map, x -> x*2)
這樣是可以動的,但是整體來說太詭異了= =;
所以不只要頭而已還要有尾巴!
可以是突然意識到尾巴的介面有困難阿!