[swift-evolution] protocol-oriented integers (take 2)
David Sweeris
davesweeris at mac.com
Sun Jan 15 03:36:27 CST 2017
> On Jan 15, 2017, at 03:20, Xiaodi Wu via swift-evolution <swift-evolution at swift.org> wrote:
>
> Given that Arithmetic also provides for multiplication and division, might it be wise then also to have .multiplicativeIdentity (or .one)?
>
>> On Sun, Jan 15, 2017 at 02:47 Dave Abrahams via swift-evolution <swift-evolution at swift.org> wrote:
>>
>> on Sat Jan 14 2017, Dave Abrahams <swift-evolution at swift.org> wrote:
>>
>> > That said, the ability to interpret integer literals as an arbitrary
>> > Arithmetic isn't used anywhere in the standard library, so I'd like to
>> > consider undoing
>> > https://github.com/apple/swift/commit/de5b03ddc41be9c5ca5e15d5709eb2be069286c1
>> > and moving ExpressibleByIntegerLiteral down the protocol hierarchy to
>> > BinaryInteger.
>>
>> Oh, and I meant to add: maybe the right way for an arbitrary X modeling
>> Arithmetic to spell zero (which is needed for negation) is something
>> like
>>
>> X.additiveIdentity
>>
>> or
>>
>> X.zero
>>
>> in other words, via a requirement
>>
>> static var theNameWeChoose: Self { get }
+1
- Dave Sweeris
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20170115/4e8f259d/attachment.html>
More information about the swift-evolution
mailing list