<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On 12 October 2017 at 09:34, David James <span dir="ltr">&lt;<a href="mailto:davidbjames1@gmail.com" target="_blank">davidbjames1@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div style="word-wrap:break-word">IMO everyday app building would rarely need to use functions with discardable results. This is more an issue with libraries or frameworks that support a <i>fluent interface</i> (e.g. that return self) where an operator chain can be stopped at any point, unless it clearly doesn’t make sense, in which case @discardableResult would not be advised. I am building such a library. It has 200+ uses of @discardableResult and <u>I don’t have a problem with it in it’s current form</u> (especially since it can go on the line before the function). It’s an annotation for a specialized purpose, hence the very specific nomenclature.</div></blockquote><div><br></div><div>let me guess: you put it on a different line exactly because it is in it&#39;s current ugly form :)</div><div><br></div><div>personally, if &quot;x: inout Int&quot; is in it&#39;s current form (vs. &quot;@inputOutput x: Int&quot;) so shall be &quot;discardable Int&quot;, i see no principle difference between them to make one looking it is from a different planet altogether.</div><div><br></div><div>Mike</div><div><br></div></div></div></div>