[swift-evolution] Add an ifPresent function to Optional
Erica Sadun
erica at ericasadun.com
Mon Mar 14 22:14:14 CDT 2016
I suddenly have a great desire to do a pull-request on https://github.com/apple/swift-evolution/blob/master/commonly_proposed.md
-- E, who has admittedly taken on too much today
> On Mar 14, 2016, at 9:12 PM, Jordan Rose via swift-evolution <swift-evolution at swift.org> wrote:
>
> We've talked about this before, so I'm going to link directly to my (negative) response from back then: https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20151214/003697.html <https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20151214/003697.html>.
>
> (The rest of the thread is certainly also relevant, but my past opinion is still the one I most identify with here!)
>
> Jordan
>
>> On Mar 11, 2016, at 12:15 , Dave via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
>>
>> +1.
>>
>> I’d go so far as to suggest that maybe Optional should conform to CollectionProtocol, since you can pretty easily think of an Optional as a collection that can’t have more than one element.
>>
>> - Dave Sweeris
>>
>>> On Mar 10, 2016, at 7:32 PM, Erica Sadun via swift-evolution <swift-evolution at swift.org <mailto:swift-evolution at swift.org>> wrote:
>>>
>>> While I'm not convinced of the utility or lack thereof, wouldn't it make more sense
>>> to extend `forEach` to support optionals in a similar way that map and flapMap
>>> currently do rather than introduce `ifPresent`?
>>>
>>> let y: Int? = 1
>>> let n: Int? = nil
>>>
>>> _ = y.map({ print($0) }) // works in current Swift
>>> _ = n.map({ print($0) }) // ditto
>>>
>>> y.forEach{ print($0) } // not currently a thing
>>> n.forEach{ print($0) } // ditto
>>>
>>> Just spitballing here.
>>>
>>> -- E
>>>
>>> _______________________________________________
>>> swift-evolution mailing list
>>> swift-evolution at swift.org <mailto:swift-evolution at swift.org>
>>> https://lists.swift.org/mailman/listinfo/swift-evolution <https://lists.swift.org/mailman/listinfo/swift-evolution>
>> _______________________________________________
>> swift-evolution mailing list
>> swift-evolution at swift.org <mailto:swift-evolution at swift.org>
>> https://lists.swift.org/mailman/listinfo/swift-evolution <https://lists.swift.org/mailman/listinfo/swift-evolution>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160314/1482c2b5/attachment.html>
More information about the swift-evolution
mailing list