[swift-evolution] [Concurrency] async/await + actors

Ben Rimmington me at benrimmington.com
Thu Aug 24 16:34:17 CDT 2017

Re: <https://gist.github.com/lattner/429b9070918248274f25b714dcfc7619>

Chris Lattner recently commented in <https://github.com/apple/swift/pull/11501> that the prototype could use <https://llvm.org/docs/Coroutines.html> support.

In one of the CppCon videos, Gor Nishanov said that C++ coroutines won't have an `async` keyword, and will be compatible with function pointers in C and C++.

* <https://channel9.msdn.com/Events/CPP/C-PP-Con-2014/0006-await-20-Stackless-Resumable-Functions>

* <https://channel9.msdn.com/events/CPP/CppCon-2015/CPPConD03V008>

* <https://channel9.msdn.com/events/CPP/CppCon-2016/CppCon-2016-Gor-Nishanov-C-Coroutines-Under-the-covers>

I couldn't find the reason for this decision; does anyone here know why C++ coroutines don't need an `async` keyword?

And/or why do Swift coroutines need the `async` keyword? Does it imply a hidden parameter, like the `throws` keyword?

-- Ben

More information about the swift-evolution mailing list