My opinion is that filterMap is the right choice of name.
I'm completely biased, given that I already have a Swift library that uses
filterMap, in exactly this context, for a Reactive Programming library:
https://github.com/mattgallagher/CwlSignal/blob/22f1d47895896d7b55bc59a4ee5394071f3c84cf/Sources/CwlSignal/CwlSignalReactive.swift#L453?ts=3
Obviously, I went through the thought process, looked at other libraries and
thought it was the best name.
On the topic of a method that "compacts" without also mapping... I think this
encourages poor designs that should be using lazy transformations instead of
aggregate processing. There is almost always a way around a bare flatten. The
obvious quirkiness of `filterMap { $0 }` (or whatever the name ends up being)
should be seen as a nudge to re-think the algorithm leading up to that point.
Cheers,
Matt Gallagher.
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution