Boost logo

Boost :

Subject: Re: [boost] New Boost.XInt Library, request preliminary review
From: Arash Partow (arash_at_[hidden])
Date: 2010-03-26 21:15:50

Chad Nelson wrote:
> Hi! I'm a long-time user (and admirer) of the Boost libraries, and I've
> just uploaded a new one to the Boost Vault for consideration: the
> Extended Integer (XInt) library, a unlimited-precision integer library
> that I've been working on for the last few months. I'd like to request a
> preliminary review of it, please.
> I know I was supposed to "determine interest" first, but I've seen posts
> going back at least five years, expressing a desire for such a library,
> so I didn't think that was really necessary in this case. :-)
> It's not perfect. The code is complete, as is the documentation text.
> But it doesn't yet support auto-linking or Windows DLLs, I'm not sure
> how the test suite would fit into the Boost test system, and I'm not
> sure I've got the Jamfile correct. But it should be sufficient for
> experimental use and review, and I'm eager to hear what you guys think
> of it.
> (I'm writing this in the wee hours of March 26th, I hope it isn't held
> in the moderation queue for too long.)

Chad, your offering does indeed look like a very promising edition to Boost. Thank-you for the effort, though I do have some questions for its future incarnations:

Question 1: Will you be adding an extensions module so that people can use GMP (or other bigint packages) for operation implementations?

Question 2: Will you be adding any performance comparisons, say between this library and others?

Question 3: Are there any plans to update the interface to make use of expression templates? - certain combinations of operations offer far superior performance when merged (at compile time) as opposed to being computed sequentially.

Question 4: Will there be a conversion interface for scientific notion based integers representations? eg: -123e+300 (or even conversion from PODs such as doubles, long doubles or floats to xint::integer)

Question 5: Seeing as you touched on the topic of cryptography, will there be a very simple RSA example? (most bigint libraries do this as a cursory indicator of their operational validity)

Arash Partow

Boost list run by bdawes at, gregod at, cpdaniel at, john at