on Thu Jun 30 2016, Matthew Johnson <matthew-AT-anandabits.com> wrote:
> Sent from my iPad > >> On Jun 30, 2016, at 6:59 PM, Erica Sadun via swift-evolution >> <swift-evolution@swift.org> wrote: >> >> >>>> On Jun 30, 2016, at 5:47 PM, James Berry <jbe...@rogueorbit.com> wrote: >>>> >>>> >>>> On Jun 30, 2016, at 4:05 PM, Dave Abrahams via swift-evolution >>>> <swift-evolution@swift.org> wrote: >>>> on Thu Jun 30 2016, Erica Sadun <erica-AT-ericasadun.com> wrote: >>>> >>>>>> On Jun 30, 2016, at 4:41 PM, Dave Abrahams <dabrah...@apple.com> wrote: >>>>>>> I mentioned this in a comment on the gist already, but I'm really not >>>>>>> digging the "array" in `arraySpacing`. We've already moved from >>>>>>> top-level >>>>>>> "stride" to "memory layout spacing," gaining plenty of clarity. I'm >>>>>>> skeptical that the "array" adds anything more. Moreover, it muddies the >>>>>>> waters by mentioning a specific type (Array) in a context where you're >>>>>>> querying the memory layout properties of another type. >>>>>> >>>>>> OK, I agree with that. If we have “alignment” rather than >>>>>> “defaultAlignment,” I suppose we can have plain “spacing.” >>>>> >>>>> No way to last-second sell you on interval rather than spacing? >>>> >>>> If you can explain why it's better. >>>> >>>>> // Returns the least possible interval between distinct instances of >>>>> /// `T` in memory. The result is always positive. >>>> >>>> For me, “interval” doesn't go with “size” and “alignment,” which are all >>>> about physical distances and locations. There are all kinds of >>>> “intervals,” e.g. time intervals. >>> >>> Hmm. Sounds like stride to me. stride or byteStride? >>> >>> James >> >> FAQ: "Why aren't you using the obvious phrase `stride` for something that >> clearly >> returns the memory stride?" >> >> ANSWER: "As stride already has a well-established meaning in the standard >> library, >> this proposal changes the name to spacing, providing a simple but correct >> name that >> works well enough in its intended use. Measuring memory is sufficiently >> esoteric >> that we prefer to reserve `stride` for a more common use case." > > Counter: some words have more than one well established meaning when > used in different contexts. 'spacing' isn't too bad here (much better > than 'arraySpacing') but sticking to the term of art 'stride' would be > best IMO. As James mentioned, spacing implies empty space *between* > items whereas stride matches the meaning of this property *exactly* > (which is why it is the term of art). > > If a programmer can't distinguish between a 'stride' property on > MemoryLayout and the 'stride' function they probably have no business > doing anything which requires use of MemoryLayout in the first place. I don't believe that “stride” *is* the accepted term of art for this meaning. I never heard of the idea of types having an intrinsic “stride” until I arrived on the Swift project. That usage came from “strideof.” If you all swear up and down that you've been talking about “the stride of a type” for more than 2 years, I won't fight you on this. Otherwise... well, I still won't fight; I'm being crushed by an avalanche of bikesheds and I can't muster the energy ;->... but I'll forever be plagued by doubts about the name. -- Dave _______________________________________________ swift-evolution mailing list swift-evolution@swift.org https://lists.swift.org/mailman/listinfo/swift-evolution