<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div><br></div><div>On Jan 15, 2017, at 03:20, Xiaodi Wu via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; wrote:<br><br></div><blockquote type="cite"><div>Given that Arithmetic also provides for multiplication and division, might it be wise then also to have .multiplicativeIdentity (or .one)?<br><br><div class="gmail_quote"><div dir="ltr">On Sun, Jan 15, 2017 at 02:47 Dave Abrahams via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br class="gmail_msg">
on Sat Jan 14 2017, Dave Abrahams &lt;<a href="mailto:swift-evolution@swift.org" class="gmail_msg" target="_blank">swift-evolution@swift.org</a>&gt; wrote:<br class="gmail_msg">
<br class="gmail_msg">
&gt; That said, the ability to interpret integer literals as an arbitrary<br class="gmail_msg">
&gt; Arithmetic isn't used anywhere in the standard library, so I'd like to<br class="gmail_msg">
&gt; consider undoing<br class="gmail_msg">
&gt; <a href="https://github.com/apple/swift/commit/de5b03ddc41be9c5ca5e15d5709eb2be069286c1" rel="noreferrer" class="gmail_msg" target="_blank">https://github.com/apple/swift/commit/de5b03ddc41be9c5ca5e15d5709eb2be069286c1</a><br class="gmail_msg">
&gt; and moving ExpressibleByIntegerLiteral down the protocol hierarchy to<br class="gmail_msg">
&gt; BinaryInteger.<br class="gmail_msg">
<br class="gmail_msg">
Oh, and I meant to add: maybe the right way for an arbitrary X modeling<br class="gmail_msg">
Arithmetic to spell zero (which is needed for negation) is something<br class="gmail_msg">
like<br class="gmail_msg">
<br class="gmail_msg">
&nbsp; &nbsp;X.additiveIdentity<br class="gmail_msg">
<br class="gmail_msg">
or<br class="gmail_msg">
<br class="gmail_msg">
&nbsp; &nbsp;X.zero<br class="gmail_msg">
<br class="gmail_msg">
in other words, via a requirement<br class="gmail_msg">
<br class="gmail_msg">
&nbsp; &nbsp;static var theNameWeChoose: Self { get }<br class="gmail_msg"></blockquote></div></div></blockquote><br><div>+1</div><div><br></div><div>- Dave Sweeris&nbsp;</div></body></html>