[swift-evolution] [Pitch] Remove destructive consumption from Sequence
swift-evolution at haravikk.me
Fri Jul 1 02:34:03 CDT 2016
> On 30 Jun 2016, at 23:39, Dave Abrahams <dabrahams at apple.com> wrote:
> All multi-pass sequences can benefit from subscripts.
Sorry, not really what I meant, but rather; how many sequences are really going to use them?
> It's trivial; the index contains the iteration state. The only
> fundamental difference between the constraints on Iterator and the
> constraints on an Index is that Iterator doesn't support comparison for
Won't this make implementing sequences more complex? Sequences are currently dead easy to implement, and to implement in an ad-hoc way via AnySequence(body:), how would that be done under this required indexing scheme? I just feel like things are easiest if Sequence is simply tweaked to require that it's iterators must be non-destructive, as implementing them will be just as easy, at which point it's just a matter of separating out which methods take Sequences and which take Iterators.
More information about the swift-evolution