> On Jun 15, 2016, at 10:58 AM, Félix Cloutier via swift-evolution
> <swift-evolution@swift.org> wrote:
>
> I know that one, but I merely need fixed-size big integers. Backing all of my
> integers with an array seems overly expensive.
>
> Félix
>
>> Le 14 juin 2016 à 23:25:16, T.J. Usiyan <griotsp...@gmail.com
>> <mailto:griotsp...@gmail.com>> a écrit :
>>
>> There is also a fairly robust implementation of arbitrary size integers here
>> https://github.com/lorentey/BigInt/tree/master/Sources
>> <https://github.com/lorentey/BigInt/tree/master/Sources>
>>
>> On Tue, Jun 14, 2016 at 10:02 PM, Charlie Monroe via swift-evolution
>> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote:
>> 128-bit Ints have been discussed here a few weeks ago:
>>
>> https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160523/018957.html
>>
>> <https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160523/018957.html>
>>
>>> On Jun 15, 2016, at 5:50 AM, Félix Cloutier via swift-evolution
>>> <swift-evolution@swift.org <mailto:swift-evolution@swift.org>> wrote:
>>>
>>> I'm writing a program that would need Int128s. Since Swift uses LLVM and
>>> LLVM has good support for arbitrary-sized integers (well, up to 2^24 bits
>>> anyways), I was wondering if there was any interest in having
>>> arbitrary-sized integers in Swift.
>>>
>>> Félix
When you say “LLVM has good support for arbitrary-sized integers”, what does
that mean? Also, I wouldn’t say that "Swift uses LLVM"… The only (complete)
Swift compiler that I’m aware of is built on the LLVM infrastructure, and Xcode
does use many of LLVM’s (and LLDB's) features to do its IDE voodoo, but the
language itself doesn’t require any particular compiler to be used. In light of
that, I’m not sure it’s wise to be tying Swift’s standard library so closely to
something that’s strictly part of LLVM. OTOH, I’m also not sure it’d be any
harder to add a few bigint types to a compiler than to a library, so maybe that
doesn’t really matter in this case.
What about creating UInt/Int128, UInt/Int256, etc up to the largest size which
can fit in the target’s SIMD unit? That should allow for Int128 to be
pseudo-natively handled on any CPU Swift is officially targeting, but wider
than that and I’m not sure (also it obviously would use the SIMD unit, which
may not be what you want)
How would this affect the `IntMax` typealias and its associated functions?
- Dave Sweeris
_______________________________________________
swift-evolution mailing list
swift-evolution@swift.org
https://lists.swift.org/mailman/listinfo/swift-evolution