<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Jun 18, 2014 at 10:08 AM, Gábor Lehel <span dir="ltr"><<a href="mailto:glaebhoerl@gmail.com" target="_blank" onclick="window.open('https://mail.google.com/mail/?view=cm&tf=1&to=glaebhoerl@gmail.com&cc=&bcc=&su=&body=','_blank');return false;">glaebhoerl@gmail.com</a>></span> wrote:<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

<div dir="ltr"><div><div># Between a rock and a hard place<br><br></div><div>Having dispatched the "easy" cases above, for category #3 we're left between the rock (wraparound on overflow is wrong) and the hard place (checking for overflow is slow).<br>


<br></div><div>Even here, we may have options.</div></div></div></blockquote><div><br></div><div>I really like what Swift did: define two sets of operators, a default one which checks/errors on overflow, and a second set of "overflow operators" (which look like &+ &- etc) when you need the performance of unchecked operations or otherwise desire overflow behavior:</div>

<div><br></div><div><a href="https://developer.apple.com/library/prerelease/ios/documentation/swift/conceptual/swift_programming_language/AdvancedOperators.html#//apple_ref/doc/uid/TP40014097-CH27-XID_37">https://developer.apple.com/library/prerelease/ios/documentation/swift/conceptual/swift_programming_language/AdvancedOperators.html#//apple_ref/doc/uid/TP40014097-CH27-XID_37</a></div>

<div> </div></div>-- <br>Tony Arcieri<br>
</div></div>