Boost logo

Boost :

From: Fernando Cacciola (fcacciola_at_[hidden])
Date: 2001-06-22 12:33:44


----- Original Message -----
From: John Max Skaller <skaller_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Friday, June 22, 2001 2:09 PM
Subject: Re: [boost] Re: Unlimited integer

> <snip>
> Long and short: if you want a high performance
> implementation, forget about it being 'Standard'.
> This doesn't apply to the _interface_.
>
I disagree.
IMO, EVERY piece of code in C/C++ can -and eventually must- be ISO
conformant.
Performace-related flexibility (explicit optimizations for a given target)
must be handled by configurable build systems which setup the source files
to address the target charateristics (eventually using non-C/C++
components).
This is the case for GMP.
In my experience, is the configurable build system of these packages which
makes it hard to port to win32, not the code itself.

> Developing a good interface is not easy.
> The obvious operations are easy, but for good
> performance you need the big integers to work
> with small ones too. Choosing which routines
> to provide is hard, and even harder if you
> want both performance and also ability
> to wrap one of many available implementations.
>
I noticed this too.
The problem is that the choice of non-obvious operations depends on the
features of the underlaying kernel.
Unless we fix a kernel, the integer class will be able to support only a
basic interface. But this is OK in most applications.

> The best solution is probably to provide
> a LOT of routines (some of which will
> be slow for a given package).
>
> Another solution is two levels of interface:
> basic and advanced.
>
I'm not sure about this. I need to see some examples of it.

Fernando Cacciola
Sierra s.r.l.
fcacciola_at_[hidden]
www.gosierra.com


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk