<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class="">The explicit-at-definition, implicit-at-call-site force unwrapping of optionals can be achieved with this syntax:</div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class=""><br class=""></div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class="">func test(name1: String!, name2: String!) {</div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class=""><span class="Apple-tab-span" style="white-space:pre">        </span>print(name, name2)</div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class="">}</div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica; min-height: 14px;" class=""><br class=""></div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class="">// prints 'first second' - does not print 'Optional("second")'</div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class="">test(name1: "first", name2: Optional("second"))</div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class=""><br class=""></div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class="">I think this is about as ergonomic as possible.</div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class=""><br class=""></div><div style="margin: 0px; font-size: 12px; line-height: normal; font-family: Helvetica;" class="">I agree with Austin that a force-unwrap error should be fatal. There is sufficient syntax in the language to allow the safe handling of optionals that we don't need to make the unsafe handling of optionals safe as well. You have the opportunity to "catch" a nil value with an if-let or a guard-else; I don't see a compelling reason to allow the catching of errors arising from circumventing those constructs.</div></body></html>