anchor.diff:                          member self.DegreeOfParallelism = collector.DegreeOfParallelism
                           member self.Iterator() = 
                               let { Func = iter } as iterator = collector.Iterator()
  -                            {   Index = iterator.Index; 
  -                                Func = (fun value -> iter (f value));
  +                            {   Func = (fun value -> iter (f value));
                                   Cts = iterator.Cts }
                           member self.Result = collector.Result }
                   stream.Apply collector }
  
positive.code:                 member self.Iterator() = 
                      let accRef = ref <| state ()
                      results.Add(accRef)
                      { Index = ref -1; 
                        Func = (fun value -> accRef := folder !accRef value);
                        Cts = new CancellationTokenSource() }
                  member self.Result = 
                      let mutable acc = state ()
  
negative.code:                         Task.Factory.StartNew(fun () ->
                                                  let mutable i = s
                                                  while i < e && !nextRef do
                                                      iter.Func source.[i]
                                                      i <- i + 1 
                                                  ())
  