<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="">The review of SE-0024 "Optional Value Setter ??=“ ran from February 12...18, 2016. The proposal text is here:<div class=""><br class=""></div><div class=""><span class="Apple-tab-span" style="white-space:pre">        </span><a href="https://github.com/apple/swift-evolution/blob/master/proposals/0024-optional-value-setter.md" class="">https://github.com/apple/swift-evolution/blob/master/proposals/0024-optional-value-setter.md</a></div><div class=""><br class=""></div><div class="">The proposal is <b class="">rejected</b>. While the ‘??=‘ operator’s semantics are clear and fit with other compound assignment operators, the use cases are not strong enough to motivate inclusion of this operator. <a href="http://thread.gmane.org/gmane.comp.lang.swift.evolution/6895" class="">Radek’s lukewarm +0.5 review</a> captures the sentiment of the core team fairly well (as was echoed by others): one very common use case in the Ruby’s similar ||= operator is to assign a default value to an optional parameter or a local variable. However, neither case works well in Swift because ??= does not erase the optionality of the variable (and cannot be used to change a parameter now that var has been removed from parameters). Property access and subscripting could still benefit from ??=, but the latter case is likely to be handled better by a Dictionary subscript operator that can substitute a default value (see, e.g., Joe Groff’s <a href="http://thread.gmane.org/gmane.comp.lang.swift.evolution/6895" class="">suggestion</a>).</div><div class=""><br class=""></div><div class=""><span class="Apple-tab-span" style="white-space: pre;">        </span>Doug Gregor</div><div class=""><span class="Apple-tab-span" style="white-space:pre">        </span>Review Manager</div><div class=""><br class=""></div></body></html>