As of today, this is possible:
prefix operator ¬
prefix func ¬ (value: Bool) -> Bool {
return !value
}
let t = true
let f = ¬t
I have to admit that I quite like this but it has a couple drawbacks:
1: if you've never seen the ¬ operator in math it makes no more sense than "!"
2: It's quite tricky to find on your keyboard depending on your layout
3: maybe ~ is a better fit?
Seems like a lot of work for a very small improvement. But I'm all for it.
André
> On 15 Feb 2017, at 22:28, Derrick Ho via swift-evolution
> <[email protected]> wrote:
>
> There is no need to change it
>
> Since the context basically disambiguates the meaning of !
>
> The next best thing is to compare it to false
>
> (val == false) // same as !val
> On Wed, Feb 15, 2017 at 3:02 PM David Waite via swift-evolution
> <[email protected] <mailto:[email protected]>> wrote:
> If someone came with a nice syntax I’d be for this. I can’t imagine what that
> would be.
>
> I doubt there is an alternate prefix or postfix operator that would pass
> muster, due to ‘!’ already meaning the appropriate thing in so many
> languages, and swift only supporting symbolic operators.
>
> I can’t think of a method on boolean which would read properly either, e.g.
>
> if isValid.not() {…}
>
> The closest I could think to a decent bike shed color would be a global
> function:
>
> if not(isValid) {…}
>
> -DW
>
>> On Feb 15, 2017, at 11:10 AM, Robert Widmann via swift-evolution
>> <[email protected] <mailto:[email protected]>> wrote:
>>
>> So you've identified the problem, but what do you propose as a solution
>> here?
>>
>> It should be noted that a (non-stdlib) language-level answer to this
>> question has already been discussed and rejected
>> (https://lists.swift.org/pipermail/swift-evolution/2015-December/000032.html
>> <https://lists.swift.org/pipermail/swift-evolution/2015-December/000032.html>).
>>
>> ~Robert Widmann
>>
>> 2017/02/15 9:02、Sadiq via swift-evolution <[email protected]
>> <mailto:[email protected]>> のメッセージ:
>>
>>> Hello,
>>>
>>> I would like to suggest to change Logical NOT Operator from ! to something
>>> else.
>>> It will increase the readability of the code and will avoid any confusion
>>> with the symbol used for force unwrapping of optional values.
>>> It would be easier for new programmers to learn Swift as the first
>>> language.
>>> I don't understand the rational behind using the same operator for two
>>> different purposes.
>>>
>>> Thanks and Regards,
>>> Mohammad Sadiq
>>> _______________________________________________
>>> swift-evolution mailing list
>>> [email protected] <mailto:[email protected]>
>>> https://lists.swift.org/mailman/listinfo/swift-evolution
>>> <https://lists.swift.org/mailman/listinfo/swift-evolution>
>> _______________________________________________
>> swift-evolution mailing list
>> [email protected] <mailto:[email protected]>
>> https://lists.swift.org/mailman/listinfo/swift-evolution
>> <https://lists.swift.org/mailman/listinfo/swift-evolution>
>
> _______________________________________________
> swift-evolution mailing list
> [email protected] <mailto:[email protected]>
> https://lists.swift.org/mailman/listinfo/swift-evolution
> <https://lists.swift.org/mailman/listinfo/swift-evolution>
> _______________________________________________
> swift-evolution mailing list
> [email protected]
> https://lists.swift.org/mailman/listinfo/swift-evolution
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution