Boost logo

Boost :

From: Paul A. Bristow (boost_at_[hidden])
Date: 2002-12-17 14:20:01


> -----Original Message-----
> From: boost-bounces_at_[hidden]
> [mailto:boost-bounces_at_[hidden]]On Behalf Of John Maddock
> Sent: Friday, December 13, 2002 11:34 AM
> To: Boost mailing list
> Subject: Re: [boost] Math constants - (in-)Formal Review?
>
> Yes we really should get this one sorted out.

> > Should I submit for a Formal Review?
>
> How about if you pick *one* constant: lets say pi for example, and provide
> the differing implementations, plus a summary of the pros and cons of each,
> then lets through it open to see if:

I have made reasonable try at this in

http://groups.yahoo.com/group/boost/files/MathConstants/Math_Constants3.zip

> personally I would prefer not to see multiple versions of the same constants
> in use, but other may well disagree.

I agree in principle - but in practice there really do seem to be conflicting
requirements, which I have tried to explain in my FAQs documentation - see below
for link.

> A good (I hope) summary of (definitely!!! conflicting) design requirements is
at

http://groups.yahoo.com/group/boost/files/MathConstants/Math_Constants_doc_3.zip

(Which I hope is now accessible and formatted better)

> To start this off:
> 1) Must be available for multiple precision's and types.
> 2) Must be available for use in generic programming.
> 3) Must be easy to use.
> 4) Should be suitably scoped in the appropriate namespace.
> 5) Should do the right thing when used as an argument for template argument
> deduction, or overload resolution.
> 6) Should be easily extended to new types.
> 7) Should be easily extended to new constants.

and to continue

8 Must not cause name pollution/clashes.
9 Must be able to be optimally efficient.
10 Must be a good handle for hardware provided constants.
11 Must provide for pi rather than pi()
12 Must not be too inefficient and troublesome in debug mode.

Paul

> How about setting up a page for this on boost's Wiki pages?

If this is the best place/way to discuss - fine.


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