<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><span class="" style="font-family: Helvetica-Light;">Proposal Link: </span><a href="https://github.com/apple/swift-evolution/blob/master/proposals/0173-swap-indices.md" class="" style="font-family: Helvetica-Light;">https://github.com/apple/swift-evolution/blob/master/proposals/0173-swap-indices.md</a><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;">The review of “SE-0173: Add MutableCollection.swapAt(_:_:)” (originally named "Add MutableCollection.swap(_:with:)”) ran from April 25...28, 2017.</div><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;">The proposal is <b class="">accepted</b><span class="">, including the revision to change the method name from “swap(_:with:)” to “swapAt(_:_)” that came out of the Core Team meeting.</span></div><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;">The consensus on swift-evolution was to add the method, with division mostly on the naming of the method. The Core Team reviewed the proposed options as well as consulted the API design guidelines to resolve the issue:</div><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;"><a href="https://swift.org/documentation/api-design-guidelines/" class="">https://swift.org/documentation/api-design-guidelines/</a></div><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;">Two important points from the guidelines serve to us well here:</div><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;"> "Omit all labels when arguments can’t be usefully distinguished”</div><div class="" style="font-family: Helvetica-Light;"> </div><div class="" style="font-family: Helvetica-Light;">and:</div><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;"><span class=""> "</span><font face="Helvetica-Light" class="">When the first argument forms part of a prepositional phrase, give it an argument label...An exception arises when the first two arguments represent parts of a single abstraction….In such cases, begin the argument label after the preposition, to keep the abstraction clear."</font></div><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;">The combination of these rules leads to the method name “swapAt(_:_:)”, which the Core Team believes was most in line with the guidelines. The proposal is accepted with this revision.</div><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;">Thanks to everyone who participated in the review!</div><div class="" style="font-family: Helvetica-Light;"><br class=""></div><div class="" style="font-family: Helvetica-Light;"><span class="Apple-tab-span" style="white-space: pre;">        </span>- Ted</div><div class="" style="font-family: Helvetica-Light;"><span class="Apple-tab-span" style="white-space: pre;">        </span>Review Manager</div></body></html>