Issue No. 12 - December (1990 vol. 16)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.62444
<p>Iterators are defined, and previously published methods for defining their meanings are outlined. It is shown how to use trace specifications to define a common form of iterator module (Alphard-style iterators). A form of specification for an iterator is shown which can capture the key differences between a set and a sequence at a few particular places in the specification. The trace specification of a sequence iterator is compared to an algebraic specification. It is concluded that the algebraic specification is possible but somewhat clumsier. Traces are used to give partial specifications of iterator construct that make sequences of calls on procedural parameters.</p>
trace specifications; common form; iterator module; Alphard-style iterators; sequence iterator; algebraic specification; partial specifications; iterator construct; procedural parameters; data structures; formal specification; high level languages
D. Lamb, "Specification of Iterators," in IEEE Transactions on Software Engineering, vol. 16, no. , pp. 1352-1360, 1990.