[swift-evolution] PITCH: New :== operator for generic constraints

Xiaodi Wu xiaodi.wu at gmail.com
Tue Aug 16 17:30:22 CDT 2016

On Tue, Aug 16, 2016 at 5:19 PM, Charles Srstka via swift-evolution <
swift-evolution at swift.org> wrote:

> On Aug 16, 2016, at 5:13 PM, David Sweeris <davesweeris at mac.com> wrote:
> Any proposal that expands the power of generic programming gets an almost
> automatic +1 from me.
> I can't think of any circumstances in which I wouldn't want to use ":=="
> instead of ":". Are there any downsides to expanding ":" to mean what ":=="
> does?
> Incidentally, I kinda thought things either already worked like this, or
> would work like this after generics were "completed", but I can't tell you
> why I thought that.
> Me neither, but the last time I proposed that, people stated that there
> were some cases where this could not work. No concrete examples were given,
> but I assume it probably has something to do with associated type
> wackiness. :== seems like a workable compromise to me.

If an existential of a protocol P doesn't conform to itself, what can you
do inside the body of a generic function that has a generic constraint
specified with `:==`? In other words, what would we know about what's in
common between such an existential of a protocol and types that conform to
the protocol?

> Week-of-Mon-20160523/019510.html
> Charles
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160816/f00dc240/attachment.html>

More information about the swift-evolution mailing list