[swift-evolution] [Review] SE-0065 A New Model for Collections and Indices
Dave Abrahams
dabrahams at apple.com
Mon Apr 18 16:54:10 CDT 2016
on Sat Apr 16 2016, Thorsten Seitz <swift-evolution at swift.org> wrote:
>> Am 15.04.2016 um 23:19 schrieb Dmitri Gribenko via swift-evolution <swift-evolution at swift.org>:
>>
>> On Fri, Apr 15, 2016 at 1:30 PM, Stephan Tolksdorf <st at quanttec.com> wrote:
>>> On 2016-04-12 Dmitri Gribenko via swift-evolution wrote:
>>>>
>
>>>> Not even to mention that
>>>> indices are valid only in context of a particular collection instance,
>>>> so in this model you could validate an index against one collection
>>>> and use it with another one.
>>>
>>>
>>> The proposal requires Index values to be Comparable. Does that mean that
>>> indices from different collection instances should be comparable i.e. have a
>>> strict total order?
>>
>> No, comparing indices from unrelated instances produces unspecified
>> results (incl. traps).
>
> Path dependent types as used in Scala would allow making this
> distinction type safe (see
> http://docs.scala-lang.org/tutorials/tour/inner-classes or
> http://danielwestheide.com/blog/2013/02/13/the-neophytes-guide-to-scala-part-13-path-dependent-types.html)
> by allowing the index type to be rooted at the instance.
Wouldn't that also rule out useful designs, as in those where indices
into one collection are stored in another?
> Are there any plans to adding path dependent types to Swift?
I don't know of any, but that doesn't really mean much.
--
Dave
More information about the swift-evolution
mailing list