If I had to choose what subscripts are most like, I'd have to say properties. Subscripts don't support partial application, and do support setters. I agree with Patrick in that subscripts are more like a ‘parameterized property’.
If everyone's in favour, I'd like to get a proposal submitted for this. I can have a go when I have some time, though I'm not yet familiar with the process. If anyone with experience wants to take this on, that'd be a great help. I think the change in question is pretty straightforward. From James F On 11 Jul 2016, at 06:42, Erica Sadun <[email protected]> wrote: >> On Jul 10, 2016, at 5:18 PM, James Froggatt via swift-evolution >> <[email protected]> wrote: >> >> Currently, the signature is: >> subscript(_ example: Int) -> Element { >> get { … } >> set { … } >> } >> >> The alternative, using a colon, would be: >> subscript(_ example: Int) : Element { >> get { … } >> set { … } >> } >> >> Sorry if that wasn't clear. >> >> This would be to better reflect the property-like nature of access. > > It all depends on whether a subscript is more function-y or property-y, and > don't forget subscripts can take parameters and labels. > > let y = myArrayOfStrings[safeIndex: 2, fallback: "foo"] > > -- E > _______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
