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
+1. I liked the idea of this protocol when Swift was first announced but it has become clear that it isn't a good fit for the language.
Is the problem being addressed significant enough to warrant a change to Swift?
Yes.
Does this proposal fit well with the feel and direction of Swift?
Very much so.
If you have used other languages or libraries with a similar feature, how do you feel that this proposal compares to those?
I have not used other languages with a protocol like this but I have used other languages with various kinds of "truthiness". This turns out to be a feature that is convenient most of the time but subtly problematic in ways that are confusing and troublesome. I was hopeful that Swift's more structured approach using a protocol might work out better but it didn't.
How much effort did you put into your review? A glance, a quick reading, or an in-depth study?
A quick read.
···
More information about the Swift evolution process is available at
One of the nicer things about Swift is that it eschews implicit boolean conversion, even an integer doesn’t have a truth, and favors the clarity of true expressions.
Removing this unusual construct will make Swift better, because the only places I’ve ever seen it attempt to be used are to try and bring non-Swifty behaviors to Swift.