> On Aug 19, 2017, at 7:17 PM, Chris Lattner via swift-evolution
> <[email protected]> wrote:
>> On Aug 19, 2017, at 8:14 AM, Karim Nassar via swift-evolution
>> <[email protected] <mailto:[email protected]>> wrote:
>>
>> This looks fantastic. Can’t wait (heh) for async/await to land, and the
>> Actors pattern looks really compelling.
>>
>> One thought that occurred to me reading through the section of the
>> "async/await" proposal on whether async implies throws:
>>
>> If ‘async' implies ‘throws' and therefore ‘await' implies ‘try’, if we want
>> to suppress the catch block with ?/!, does that mean we do it on the ‘await’
>> ?
>>
>> guard let foo = await? getAFoo() else { … }
>
> Interesting question, I’d lean towards “no, we don’t want await? and await!”.
> My sense is that the try? and try! forms are only occasionally used, and
> await? implies heavily that the optional behavior has something to do with
> the async, not with the try. I think it would be ok to have to write “try?
> await foo()” in the case that you’d want the thrown error to turn into an
> optional. That would be nice and explicit.
try? and try! are quite common from what I've seen.
John.
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution