[swift-evolution] Generic Subscripts

Dave Abrahams dabrahams at apple.com
Sun Jan 15 18:22:27 CST 2017

on Sun Jan 15 2017, John McCall <rjmccall-AT-apple.com> wrote:

>> On Jan 14, 2017, at 6:41 PM, Dave Abrahams via swift-evolution <swift-evolution at swift.org> wrote:
>> on Fri Jan 13 2017, John McCall <swift-evolution at swift.org> wrote:
>>> I'm also not sure we'd ever want the element type to be inferred from
>>> context like this.  Generic subscripts as I see it are about being
>>> generic over *indexes*, not somehow about presenting a polymorphic
>>> value.
>> Actually I *would* want to be able to do that, though I admit it's the
>> 1% case (or less).
> Would you actually want the value type to be inferred, or you would
> just want it to be allowed to vary according to the index type?
> Because the former sounds like a huge usability issue.

Both.  Usability-wise, it's no worse than f<T>() -> T, which has its
(rare) uses today and doesn't cause a problem when it's not used.
Ideally I'd like to be able to guide deduction to pick a sensible
default for T when there's insufficient type context, but that's a
separable feature.


More information about the swift-evolution mailing list