|
Boost : |
From: Kevin Lynch (krlynch_at_[hidden])
Date: 2001-11-02 17:25:25
Beman Dawes wrote:
>
> At 01:05 PM 11/1/2001, Paul A. Bristow wrote:
>
> >Was there any discussion on the C99 additions to math.h, which
> >one will get by #including <cmath>
>
> No specific discussion. My understanding is that Bill Plauger (also know
> as PJP) will propose bringing all the C99 library features forward into
> C++, with modifications only proposed where there is an outright clash
> between C99 and C++98.
>
> If you are interested, be sure to look at the publicly available
> documentation: http://www.dinkumware.com/refxc.html
>
> If any Boosters think that there should be changes beyond what PJP is
> likely to propose, those of us on the committee will figure out some way to
> get your concerns addressed early on.
>
> --Beman
>
I hope you don't mind me putting forward my laundry list in the math
area:
-> Import the new functions from math.h (this one is a no brainer, I
think); most of the macros (isgreater, fpclassify, etc.) should really
be turned into functions/templates (they are macros only because there
is no overloading in C, and the overloading/template mechanisms are
better suited to dealing with this functionality: consider: int i;
fpclassify(i); this probably works, works silently, and can't be
diagnosed as an error by the compiler.).
-> Import the missing functionality from complex.h into <complex> (the
inverse trig and hyperbolic functions, for example); also, any
functionality in math.h that doesn't currently apply to complex should
be applied where it makes sense to do so (log10, the gamma family,
etc.); see also the "future directions" chapter in the C99 standard;
otherwise, complex.h obvious is superseded by <complex> and shouldn't
come in.
-> Floating point environment control in fenv.h should come in
-> tgmath.h should NOT come in, since the macros are only there to cover
for the lack of overloading
-> it would be nice if all the preprocessor macros that define constants
(HUGE_VAL, INFINITY, etc.) could follow the lead of boost/cstdlib and
become constant variables.
-- ------------------------------------------------------------------------------- Kevin Lynch voice: (617) 353-6065 Physics Department Fax: (617) 353-6062 Boston University office: PRB-565 590 Commonwealth Ave. e-mail: krlynch_at_[hidden] Boston, MA 02215 USA http://physics.bu.edu/~krlynch -------------------------------------------------------------------------------
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk