> -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED]]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. _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost