[swift-evolution] Optional comparison operators

Jacob Bandes-Storch jtbandes at gmail.com
Tue Jul 12 14:20:57 CDT 2016


Here's another proposal to reinstate mixed-optional versions of
==/!=/===/!==, assuming that coercion is removed:
https://github.com/apple/swift-evolution/pull/426

Jacob

On Tue, Jul 12, 2016 at 11:29 AM, Chris Lattner <clattner at apple.com> wrote:

>
> On Jul 12, 2016, at 10:26 AM, Jacob Bandes-Storch <jtbandes at gmail.com>
> wrote:
>
> I've submitted a PR for my proposal to remove these versions of </<=/>/>=
>  at  https://github.com/apple/swift-evolution/pull/425.
>
>
> Thanks, LGTM, I merged and kicked it off.
>
> -Chris
>
>
> On Tue, Jul 12, 2016 at 12:03 AM, Jacob Bandes-Storch <jtbandes at gmail.com>
> wrote:
>
>> On Mon, Jul 11, 2016 at 9:54 PM, Chris Lattner <clattner at apple.com>
>> wrote:
>>
>>>
>>> On Jul 11, 2016, at 9:35 PM, Mark Lacey <mark.lacey at apple.com> wrote:
>>>
>>>
>>> On Jul 11, 2016, at 9:12 PM, Chris Lattner via swift-evolution <
>>> swift-evolution at swift.org> wrote:
>>>
>>>
>>> On Jul 11, 2016, at 8:14 PM, Jacob Bandes-Storch via swift-evolution <
>>> swift-evolution at swift.org> wrote:
>>>
>>> You'd have to unwrap it, or use the ??/==/!= operators:
>>> https://gist.github.com/jtbandes/9d88cc83ceceb6c62f38
>>>
>>> I'd be okay with </<=/>/>= returning Bool?, as I suggested in an older
>>> email (which somehow didn't make it to gmane's archive, but it's quoted in some
>>> other messages
>>> <http://thread.gmane.org/gmane.comp.lang.swift.evolution/10095>). I
>>> think it would be more convenient in some cases than unwrapping the
>>> individual values before comparing them.
>>>
>>>
>>> I’d be strongly opposed to those operator returning “Bool?”.  Doing so
>>> would prevent conforming to Comparable and would be extremely surprising.
>>>
>>> -Chris
>>>
>>>
>>> I just pushed the current draft of the proposal:
>>> https://github.com/rudkx/swift-evolution/blob/eliminate-value-to-optional-coercion/proposals/0000-disallow-value-to-optional-coercion-in-operator-arguments.md
>>>
>>> I haven’t addressed removal of the ordered comparison operators. I
>>> suspect this should be a separate proposal, but I can roll that into this
>>> one if it’s desired.
>>>
>>> I’ll update the proposal as the discussion continues until it’s selected
>>> for review.
>>>
>>>
>>> I think it makes sense to keep removal of the non-equality comparisons a
>>> separate proposal.
>>>
>>
>> Here's a draft. Feedback welcome:
>>
>>
>> https://github.com/jtbandes/swift-evolution/blob/master/proposals/0122-remove-optional-comparison-operators.md
>>
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160712/74ae0748/attachment.html>


More information about the swift-evolution mailing list