I'm trying to work them out, so it's still muddled.

Right now, I think SequenceType is better described as CollectionWalkType but 
that's kind of (1) a mouthful and (2) not entirely accurate. 

Moving back a step: SequenceType is defined as: "A type that can be iterated 
with a `for`...`in` loop." But it says nothing about whether that loop ever 
terminates and many stdlib sequence functions currently don't make sense (at 
least if they're not lazy) with respect to infinite sequences, which should 
probably be "StreamType" not sequences. A couple of examples:
Here's my fib: http://swiftstub.com/189513594/
And here's Oisin's user-input sequence:  
https://gist.github.com/oisdk/2c7ac33bf2188528842a
Both of these are theoretically filterable, but they aren't dropLast-able, 
suffix-able, properly split-able, etc.

Hopefully that's enough of a starting point to indicate where my thinking is at 
and what I'm trying to think through when it comes to this. -- E


> On Dec 31, 2015, at 10:09 AM, Dave Abrahams <dabrah...@apple.com> wrote:
> 
> 
>> On Dec 31, 2015, at 9:05 AM, Erica Sadun via swift-evolution 
>> <swift-evolution@swift.org> wrote:
>> 
>> It does seem that in Swift the concepts of collection, sequence, 
>> permutation, stream, etc are a bit muddled.
> 
> This is a pretty vague critique.  Do you have specifics, and suggestions that 
> address them?
> 
>> 
>> -- E
>> 
>> 
>>> On Dec 31, 2015, at 6:51 AM, Tino Heth via swift-evolution 
>>> <swift-evolution@swift.org> wrote:
>>> 
>>>> Those are collections.  Collections can be iterated over multiple times.
>>> Speaking of the Fibonacci-numbers:
>>> Sure we can write an algorithm that iterates over them several times — it 
>>> just won't ever finish the first iteration ;-)
>>> (only nitpicking — I just couldn't resist)
>>> 
>>> Happy new year!
>>> _______________________________________________
>>> swift-evolution mailing list
>>> swift-evolution@swift.org
>>> https://lists.swift.org/mailman/listinfo/swift-evolution
>> 
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution@swift.org
>> https://lists.swift.org/mailman/listinfo/swift-evolution
> 
> -Dave
> 

_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to