[swift-evolution] [swift-evolution-announce] [Review] SE-0126: Refactor Metatypes, repurpose T.self and Mirror

Joe Groff jgroff at apple.com
Thu Jul 21 10:53:12 CDT 2016

Before passing judgment on any particular ideas, I want to say that this proposal is huge, and I see no realistic way we can evaluate and implement this in the remaining week for source-breaking changes to Swift 3. I would recommend:

- Breaking it up into smaller proposals. There are quite a few orthogonal points that deserve independent evaluation, including:
	- Renaming T.Type and T.Protocol to Type<T>, or something similar
	- Splitting the responsibility of metatypes into two separate concepts
	- Folding MemoryLayout into one of those concepts
	- Renaming Mirror

- Since it's unlikely we can take this for Swift 3, sketching out a migration plan to bring the functionality to a future version of Swift. We will need a deprecation period where both the old and new functionality are supported. We will also need to ensure the implementation and runtime can remain compatible with deployed binaries using the Swift 3 behavior.

The latter point should probably be a requirement for all proposals going forward.


> On Jul 20, 2016, at 5:18 PM, Chris Lattner <clattner at apple.com> wrote:
> Hello Swift community,
> The review of "SE-0126: Refactor Metatypes, repurpose T.self and Mirror" begins now and runs through July 24. The proposal is available here:
> 	https://github.com/apple/swift-evolution/blob/master/proposals/0126-refactor-metatypes-repurpose-t-dot-self-and-mirror.md
> Reviews are an important part of the Swift evolution process. All reviews should be sent to the swift-evolution mailing list at
> 	https://lists.swift.org/mailman/listinfo/swift-evolution
> or, if you would like to keep your feedback private, directly to the review manager.
> What goes into a review?
> The goal of the review process is to improve the proposal under review through constructive criticism and contribute to 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,
> -Chris Lattner
> Review Manager
> _______________________________________________
> swift-evolution-announce mailing list
> swift-evolution-announce at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution-announce

More information about the swift-evolution mailing list