I think assumptions are being made that shouldn't be. For example I use a lot 
for design patterns such as the builder. Most of the methods return a reference 
to self so they can be chained together. The compiler shouldn't tell me I'm 
wrong for ignoring those return values. It use to be my decision.

Swift was already a very opinionated language and I can see it's being taken 
even further. A mistake in my opinion and one that is certainly making the 
language more frustrating than pleasurable to use.



> On Oct 30, 2016, at 1:32 PM, Robert Widmann <[email protected]> wrote:
> 
> Functions that return values return them for a reason.  Ignoring them is, 
> more likely than not, an oversight that should be corrected, hence 
> @discardableResult.  We're talking error codes, object lifetime tokens, 
> failure indicators, etc.  All things that result in ignoring critical code 
> paths for the sake of convenience.  If you find yourself executing a lot of 
> side effects and ignoring return values, I would take a look at why.  A lot 
> of times you have control over the API and can eliminate some of these unused 
> return values.  Otherwise, please try to see if the return values of these 
> functions are relevant to the well-being of your program.
> 
> ~Robert Widmann
> 
> 2016/10/30 8:49、Jody Schofield via swift-dev <[email protected]> のメッセージ:
> 
>> Sorry, I'm sure this has been discussed before, but what the heck???
>> 
>> This feature is killing me. Now I have go add @discardableResult to every 
>> function that returns a non-Void or use the ugly syntax `_ =`? 
>> 
>> Until swift 3 I've really enjoyed the new language. Now I find it to be 
>> getting too rigid for the sake of "protecting" me from myself. The safety 
>> levels needs to be dialled back some.
>> 
>> 
>> _______________________________________________
>> swift-dev mailing list
>> [email protected]
>> https://lists.swift.org/mailman/listinfo/swift-dev
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to