SE-0426 (second review): BitwiseCopyable

Hello, Swift community!

The second review of SE-0426: BitwiseCopyable begins now and runs through May 2, 2024.

The original proposal has been amended by the proposal authors to incorporate feedback during review and requested clarifications. The changes from the first review are:

  • Added specificity around the limitations of the BitwiseCopyable protocol and avoid the terminology "marker protocol".
  • Updated the syntax to suppress the conformance to be ~BitwiseCopyable.
  • Expanded discussion about the difference between a type's layout being transiently bitwise-copyable and the type conforming to BitwiseCopyable.
  • Expanded discussion about dynamic casts as a future direction.

A diff of the proposal can be found here.

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 me as the review manager by DM. When contacting the review manager directly, please put "SE-0426" in the subject line.

Trying it out

If you'd like to try this proposal out, you can download a toolchain supporting it from Swift.org; the most recent Trunk Development (main) snapshots support the feature. You will need to add -enable-experimental-feature BitwiseCopyable to your build flags.

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/main/process.md

Thank you,

Tony Allevato
Review Manager

14 Likes

The revised proposal has been accepted.