[swift-evolution] Partial list of open Swift 3 design topics

Chris Lattner clattner at apple.com
Wed Jun 22 21:45:53 CDT 2016

On Jun 22, 2016, at 6:16 PM, Xiaodi Wu <xiaodi.wu at gmail.com> wrote:
>  - Remove Boolean protocol.
> ^^^
> What's the thinking behind this particular item?

“Boolean” isn’t pulling its weight:
- It only abstracts over Bool and ObjCBool.
- It only enables a few operations on ObjCBool, which are not very important.
- ObjCBool is a bridging problem, and we don’t handle bridging by introducing common protocols (e.g. in the case of String vs NSString, we don’t introduce a common “Stringable” protocol.

Further, it complicates the model:
 - People are confused by it and the similar but very different Bool type.
 - Bool is a simple enough concept to not need a family of protocols.

More information about the swift-evolution mailing list