Thread overview
Is there any implementation of a 128bit integer?
Jul 08
Rob T
July 08
https://forum.dlang.org/post/mailman.10914.1566237225.29801.digitalmars-d-learn@puremagic.com

In case someone comes across this old thread

https://dlang.org/phobos/core_int128.html


July 11

On Friday, 8 July 2022 at 15:32:44 UTC, Rob T wrote:

>

https://forum.dlang.org/post/mailman.10914.1566237225.29801.digitalmars-d-learn@puremagic.com

In case someone comes across this old thread

https://dlang.org/phobos/core_int128.html

There was a discussion on this not long ago. Walter tried implementing it recently too, though I'm guessing he gave up.

https://forum.dlang.org/thread/wuiurmxvqjcuybfipvqj@forum.dlang.org

There's multiple libraries, one of which i wrote which tries to address this issue.

One thing you can try doing is using BigInt, and then reducing to 128bit if/when you need to store the result. Apparently a number of compilers and back-ends already know how to handle 128bit types (and maybe larger), but it's a matter of just putting it in the D frontend so it generates the appropriate calls.

https://github.com/d-gamedev-team/gfm/blob/master/integers/gfm/integers/wideint.d

https://github.com/rtcvb32/Side-Projects/tree/master/arbitraryint

July 11

On Monday, 11 July 2022 at 00:19:23 UTC, Era Scarecrow wrote:

>

On Friday, 8 July 2022 at 15:32:44 UTC, Rob T wrote:

>

[...]

There was a discussion on this not long ago. Walter tried implementing it recently too, though I'm guessing he gave up.

[...]

Note that you're replying to a message containing a link to the implementation that is in the standard library today.

July 10

On 7/10/22 8:19 PM, Era Scarecrow wrote:

>

On Friday, 8 July 2022 at 15:32:44 UTC, Rob T wrote:

>

https://forum.dlang.org/post/mailman.10914.1566237225.29801.digitalmars-d-learn@puremagic.com

In case someone comes across this old thread

https://dlang.org/phobos/core_int128.html

There was a discussion on this not long ago. Walter tried implementing it recently too, though I'm guessing he gave up.

https://forum.dlang.org/thread/wuiurmxvqjcuybfipvqj@forum.dlang.org

There's multiple libraries, one of which i wrote which tries to address this issue.

 One thing you can try doing is using BigInt, and then reducing to 128bit if/when you need to store the result. Apparently a number of compilers and back-ends already know how to handle 128bit types (and maybe larger), but it's a matter of just putting it in the D frontend so it generates the appropriate calls.

https://github.com/d-gamedev-team/gfm/blob/master/integers/gfm/integers/wideint.d

https://github.com/rtcvb32/Side-Projects/tree/master/arbitraryint

So here is what happened:

  1. User found an old thread (2019) asking if there was a 128-bit integer.
  2. User noticed that there's a new implementation for 128-bit integers.
  3. User replied to the thread indicating that there is an actual implementation now.
  4. D forum software prompted user to create a new thread because it's really old.
  5. The post you see above.

Now, this is one actual use case where I think it's correct to resurrect a 3-year-old thread. Because the new reply actually isn't connected to the old thread at all, except by reference in the new thread. So someone finding the old thread will not see this reply unless they also search for any newer replies.

It makes me wonder, when you reply to an old thread and the forum software suggests instead to create a new thread referencing the old thread, if the forum software shouldn't put a link in the old thread to the new thread so those who find the old thread see there are newer replies to it?

-Steve

July 11

On Monday, 11 July 2022 at 02:49:52 UTC, Steven Schveighoffer wrote:

>

So here is what happened:

  1. User found an old thread (2019) asking if there was a 128-bit integer.
  2. User noticed that there's a new implementation for 128-bit integers.
  3. User replied to the thread indicating that there is an actual implementation now.
  4. D forum software prompted user to create a new thread because it's really old.
  5. The post you see above.

Steven is right, it's actually a vicious circle! Because as long as we can't add 1 to ulong.max effortlessly (I guess it's called front end?), these discussions will continue...

SDB@79