coobjc
coobjc copied to clipboard
Actors in coswift
Is your feature request related to a problem? Please describe. It's currently not possible to implement coroutine actors using the coswift library in Swift code.
Describe the solution you'd like
It would be helpful for co_actor() and related functions and classes in coobjc to be implemented in coswift for usage in Swift code.
Describe alternatives you've considered
I've tried using the functions from the coobjc Objective-C API and there are a number of issues with getting it to work nicely in Swift. For example, COActorChan can't be iterated in a for-loop. And COActorCompletable is a COPromiserather than the coswift equivalent Promise. Also, importing the <coobjc/coobjc.h> API in the Swift bridging header introduces ambiguous function definitions such as co_delay().
coobjc is not design for swift.
We will consider it: implement COActor in coswift
Swift 5.5 will support async/await, https://forums.swift.org/t/swift-5-5-release-process/45644, coswift will be deprecated.