<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Jul 20, 2016, at 12:52 PM, Chris Lattner <<a href="mailto:clattner@apple.com" class="">clattner@apple.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">On Jul 19, 2016, at 3:46 PM, Saagar Jha <<a href="mailto:saagarjha28@gmail.com" class="">saagarjha28@gmail.com</a>> wrote:<br class=""><div class=""><blockquote type="cite" class=""><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">I have updated the proposal <a href="https://gist.github.com/saagarjha/f33fecd4576f40133b6469da942ef453" class="">here</a>. Since this is a potentially a source breaking change, I’d like this to be considered for Swift 3; unless anyone has any issues with it, I’m going to push this to swift-evolution.</div></div></blockquote><div class=""><br class=""></div><div class="">Some comments:</div><div class="">- The syntax proposed would be *completely* unlike anything in Swift, and is semantically changing things unrelated to the type.</div><div class="">- This proposal doesn’t work, and overly punishes IUOs.</div><div class=""><br class=""></div><div class="">I recommend that we do not discuss this proposal, as it would not be a good use of community time. Beyond the unworkability of this specific proposal, in my personal opinion, there is nothing wrong with the T! syntax. Making it significantly more verbose would be a very *bad* thing for the intended use cases.</div></div></div></div></blockquote><div><br class=""></div><div>Hi Saagar,</div><div><br class=""></div><div>I’m sorry for the response above, I apparently misunderstood your early example to read it as putting the force unwrapping concept into the “forceUnwrapping” parameter label.</div><div><br class=""></div><div>I now see that your idea is to remove force unwrapping entirely for parameters. I am very concerned about this and think it would not be accepted into Swift. It makes the language less consistent (why can you do it on a property, but not a parameter) and eliminates important use cases for T!: overriding an non-nullability audited method.</div><div><br class=""></div><div>-Chris</div><div><br class=""></div></div></body></html>