If we are discussing naming changes to reduce, here's my personal opinion:
* When I first encountered it, I understood exactly what it did because I knew
that term of art. If it was named sequence, I would have been
confused.
Nobody's proposing to rename reduce to sequence, FWIW.
···
on Thu May 05 2016, David Hart <swift-evolution@swift.org> wrote:
* If we are discussing name changes, I'd personally vote to change it
to fold. It is the other term of art used for it, and it makes unfold
work.David
On 05 May 2016, at 22:39, Chris Lattner via swift-evolution > <swift-evolution@swift.org> wrote:
On May 5, 2016, at 1:03 PM, Erica Sadun <erica@ericasadun.com> wrote:
On May 4, 2016, at 5:50 PM, Chris Lattner via swift-evolution > <swift-evolution@swift.org> wrote:
Proposal link:
https://github.com/apple/swift-evolution/blob/master/proposals/0045-scan-takewhile-dropwhile.mdSequence.prefix(while:) & Sequence.drop(while:) - These are
*accepted* as specified in revision 3 of the proposal.I'm still a little sad we didn't go for `prefix`/`suffix` or `take`/
`drop` pairs that linguistically matched.Nonetheless I'm gratified these
are hopping into the language. That said, I'm going to put on my
painters cap to consider selecting some exterior latex for the feature I
was most looking forward to in this proposal:Core team writes:
unfold(_:applying:) - This addition is *rejected* by the core team
as written, but deserves more discussion in the community, and
potentially could be the subject of a future proposal. The core team
felt that the utility of this operation is high enough to be worth
including in the standard library, but could not find an acceptable
name for it. “unfold” is problematic, despite its precedence in
other language, because Swift calls the corresponding operation
“reduce” and not “fold”. No one could get excited about “unreduce”.
“iterate” was also considered, but a noun is more appropriate than
an verb in this case. Given the lack of a good name, the core team
preferred to reject to let the community discuss it more.A few thoughts:
* I'm not sure why a noun is more appropriate than a verb. Reduce isn't
a noun, prefix isn't a noun, drop isn't a noun.I’m not a naming guru, but my understanding is that ‘reduce’ was picked
because it was term of art (like map), which is what allowed the misuse of a
verb.One idea that came out of the core team discussion was something like:
sequence(from: 0) { $0 += 42 }
Since it returns a sequence.
-Chris
_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution
--
Dave