Expand description

Types and operators for dynamically scoped iterative dataflows.

Scopes in timely dataflow are expressed statically, as part of the type system. This affords many efficiencies, as well as type-driven reassurance of correctness. However, there are times you need scopes whose organization is discovered only at runtime. Naiad and Materialize are examples: the latter taking arbitrary SQL into iterative dataflows.

This module provides a timestamp type Pointstamp that can represent an update with an unboundedly long sequence of some T: Timestamp, ordered by the product order by which times in iterative dataflows are ordered. The module also provides methods for manipulating these timestamps to emulate the movement of update streams in to, within, and out of iterative scopes.


  • A timestamp type as in Naiad, where a vector of timestamps of different lengths are comparable.


  • Produces the summary for a feedback operator at level, applying summary to that coordinate.