If you are coming from packages iterators/itertools/itertools2, all functionality should be preserved, but some may be under different names. Here’s a short transition guide:
| iterators/itertools | iteror function | |||
|---|---|---|---|---|
iterators::iapply(array, margin) | 
iteror(array, by=margin) | 
|||
iterators::recycle | 
i_recycle | 
|||
itertools::ifilter(pred, iterable) | 
i_keep(iterable, pred) | 
|||
itertools::ifilterfalse(pred, iterable) | 
i_drop(iterable, pred) | 
|||
itertools::isplitCols(obj, ...) | 
iteror.array(obj, by="column", ...) | 
|||
itertools::isplitIndices(n, ...) | 
icount(n, ...) | 
|||
itertools::isplitRows(obj, ...) | 
iteror.array(obj, by="row", ...) | 
|||
itertools::isplitVector(n, ) | 
iteror.default(n, ...) | 
|||
itertools::product | 
igrid | 
|||
itertools::recycle(iter) | 
i_recycle(iter) | 
|||
itertools::recycle(function() {...}, times=N) | 
iteror(function() {...}, count=N) | 
|||
itertools::timeout(secs) | 
i_timeout(secs) | 
|||
itertools2::icompress | 
i_mask | 
|||
itertools2::icount(start=1, step=3, stop=15) | 
iseq(from=1, to=15, by=3) | 
|||
itertools2::icycle | 
i_recycle | 
|||
itertools2::idropwhile(pred, iterable) | 
i_dropwhile(iterable, pred) | 
|||
itertools2::ifilter(pred, iterable) | 
i_keep(iterable, pred) | 
|||
itertools2::ifilterfalse(pred, iterable) | 
i_drop(iterable, pred) | 
|||
itertools2::ilength | 
count(obj) | 
|||
itertools2::imap(f, it) | 
i_apply(it, f) or i_map(f, it1, it2, ...) | 
|||
itertools2::ipairwise(it) | 
i_window(it, 2) | 
|||
itertools2::iproduct | 
igrid | 
|||
itertools2::irep_len | 
i_rep(length.out=n) | 
|||
itertools2::iseq_len | 
icount | 
|||
itertools2::iseq_along(x) | 
icount(length(x)) | 
|||
itertools2::itakewhile(pred, iterable) | 
i_keepwhile(iterable, pred) | 
|||
itertools2::itripletwise(it) | 
i_window(it, 3) | 
|||
itertools2::iunique_lastseen() | 
i_dedup() | 
Other notes:
checkFunc arguments have been removed; instead use i_keep().