[swift-evolution] Proposal: remove "assert" and always use "precondition" instead.
Jean-Daniel Dupas
mailing at xenonium.com
Tue Dec 15 01:02:35 CST 2015
> Le 15 déc. 2015 à 00:13, Amir Michail via swift-evolution <swift-evolution at swift.org> a écrit :
>
>
>> On Dec 14, 2015, at 6:09 PM, sune.foldager at me.com wrote:
>>
>>
>>> On 15 Dec 2015, at 00:01, Amir Michail via swift-evolution <swift-evolution at swift.org> wrote:
>>>
>>> What about these renamings?
>>>
>>> assert => debugAssert
>>>
>>> precondition => assert
>>
>> I think precondition is a better name because it clearly expresses that this is an expected precondition for calling the method. Precondition is similar to Microsoft code contract’s Contract.Requires.
>
> I want ALL my asserts to be active in release code. Correctness is more important than performance for me. I suspect this is also the case with most programmers.
>
So what you need is just a way to tell the compiler to keep the asserts in optimized builds (if there is not already one).
>>
>> Also, the traditional use of assert (also in other languages) is for guarding against your own programmer errors, which I think most people expect when they see assert. It may be useful for an assert that’s still active in optimised builds, true. I guess that could be called assert! or assertAlways.
>>
>> -Sune
>>
>
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution
More information about the swift-evolution
mailing list