SE-0344 (second review): Distributed Actor Runtime

Hi everyone. The second review of SE-0344: Distributed Actor Runtime begins now and runs through March 31, 2021. The previous review thread is here. By comparison with the previous revision of the proposal:

  • This version revises the requirements on non-delegating initializers for distributed actors to make binding to the actorSystem explicit in the initializer body, instead of implicitly deriving the binding from the arguments to the initializer.
  • This version makes the identifiers for RemoteCallTarget fully opaque, where the previous revision had explicit APIs for manipulating the underlying Swift mangled name. It is still proposed to use mangled names as an implementation detail by default, though this revision proposal provides further justification while acknowledging the concerns about API evolution, interoperability, and performance that the community raised in the previous review, and outlining how these concerns can be addressed by further work on distributed API versioning and migration.

Reviews are an important part of the Swift evolution process. All review feedback should be either on this forum thread or, if you would like to keep your feedback private, directly to the review manager. When emailing the review manager directly, please keep the proposal link at the top of the message.

What goes into a review?

The goal of the review process is to improve the proposal under review through constructive criticism and, eventually, determine the direction of Swift. When writing your review, here are some questions you might want to answer in your review:

  • What is your evaluation of the proposal?
  • Is the problem being addressed significant enough to warrant a change to Swift?
  • Does this proposal fit well with the feel and direction of Swift?
  • If you have used other languages or libraries with a similar feature, how do you feel that this proposal compares to those?
  • How much effort did you put into your review? A glance, a quick reading, or an in-depth study?

More information about the Swift evolution process is available at

https://github.com/apple/swift-evolution/blob/master/process.md

Thank you,

Joe Groff
Review Manager

10 Likes

The core team has decided to accept this proposal. Thanks everyone!

3 Likes