Oh, you’re right. The first options I considered were either a global function or a new Tuple class/struct with a bunch of these methods built in, which seemed less elegant but I guess are now the only possibility.
— Sasha > On 18 Dec 2015, at 16:36, Félix Cloutier <[email protected]> wrote: > > To consider: the empty tuple expression is currently legal and represents the > void value. > >> Le 18 déc. 2015 à 10:30:57, Alexandre Lopoukhine via swift-evolution >> <[email protected]> a écrit : >> >> Hello everyone, >> >> To tie into the discussion of shorthands for “map", here’s something that I >> think is worth considering: >> >> Skipping the motivation (mostly, I’m on a mission to eliminate the $ >> character in my functional code), here’s a function definition: >> >> func first<A,B>(tuple: (A,B)) -> A { >> return tuple.0 >> } >> >> Having functions like this transforms >> >> pairArray.map({$0.0}) >> >> into >> >> pairArray.map(first) >> >> This is not ideal, as it pollutes the global space, and there would need to >> be tons of those for various tuple sizes. >> >> Here’s an alternative: >> >> pairArray.map(().0) >> >> I think that this makes the intent pretty clear, as well as non-conflicting >> with anything in the language. >> >> What do you all think? >> >> — Sasha >> _______________________________________________ >> swift-evolution mailing list >> [email protected] >> https://lists.swift.org/mailman/listinfo/swift-evolution > _______________________________________________ swift-evolution mailing list [email protected] https://lists.swift.org/mailman/listinfo/swift-evolution
