[swift-evolution] Strings in Swift 4
Dave Abrahams
dabrahams at apple.com
Thu Feb 2 16:19:55 CST 2017
on Thu Feb 02 2017, Jonathan Hull <jhull-AT-gbis.com> wrote:
> Just out of curiosity, what are the use-cases for an infinite sequence
> (as opposed to a sequence which is bounded to the type’s representable
> values)?
1. The type may not have an inherent expressible bound (see BigInt,
UnsafePointer, and *many* real-life Index types).
2. I keep repeating variants of this example:
func listElements<
S: Sequence, N: Number
>(of s: S, numberedFrom start: N) {
for (n, e) in zip(start..., s) {
print("\(n). \(e)")
}
}
which avoids incorrect behavior when N turns out to be a type that
can't represent values high enough to list everything in s—**if and
only if** `start...` is an unbounded range, rather than one that
implicitly gets its upper bound from its type.
--
-Dave
More information about the swift-evolution
mailing list