Hello,
This proposal is looking great! But we need to move fast as the time for
proposal is pretty much over. Just a few points:
SR-922
Just wanted to point out again what Nate alluded to in the proposal: all
functions which take as argument a Sequence can cause weird compilation errors
because of the way the type-system handles tuple labels:
let a = [1, 2, 3, 4, 5]
let b = a.map({ ($0.description, $0 * 2) })
let c = Dictionary(b)
// error: generic parameter 'Key' could not be inferred
And requires specifying the tuple labels to compile:
let a = [1, 2, 3, 4, 5]
let b = a.map({ (key: $0.description, value: $0 * 2) })
let c = Dictionary(b)
There is a bug report about this issue SR-922
<https://bugs.swift.org/browse/SR-922> I had missed it when reading the
proposal initially, so just wanted to point people to it again.
first and last
I also don’t think that first and last don’t pull their weight as global
functions and I’m not a fan of MergeCollisionStrategy either. I’m perfectly
okay with using { $0 } and { $1 }.
Thanks!
David._______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution