|
Boost : |
From: John Max Skaller (skaller_at_[hidden])
Date: 2001-05-19 21:05:14
Ed Brey wrote:
>
> > "John Max Skaller" <skaller_at_[hidden]> wrote:
> > >
> > > 4. You do NOT need to satisfy all users.
>
> Nor is it even possible. One group of unhappy users will be those who
> want a single interface.
This may be the most important group: the committee :-)
> Having the C (macro) interface and the C++
> interface will make those users unhappy. However, given a willingness
> to forsake them, it might be possible to make everyone else happy. Once
> you've opened the door to multiple interfaces, you might as go all the
> way and make as many interfaces as you need to cover all the
> (conflicting) requirements. Give pi to those who want
> qualification-free (including parentheses) names. Give pi() to those
> who want inlining and constant-folding. Give BOOST_PI to those using C.
I understand this is technically possible.
But the issue isn't technical. My feeling is:
1. I think having a library of physics constants in
the Standard is a really good idea
2. I'm not at all sure the committee will buy anything
that isn't simple and obvious.
In particular I think that 'ease of teaching' is probably the
critical requirement: the library should be designed for
first year physics students. Expert numerical analysts
are able to provide exactly what they want independently,
and probably will anyhow. If we can give them a certified
value of the largest possible precision, it leaves them
the task of fiddling with rounding/conversion issues,
which is their domain of expertise -- but relieves
them of the task of typing in the digits correctly.
I think we could look to 'valarray' here: the committee knows
work is needed, and _no one_ is willing to claim enough expertise
to do the work.
My fear is that a proposal that is too complicated is likely
to be rejected because it is too difficult to understand.
Bjarne has indicated that making the library _simpler_
as well as extending the things that can be done with it
is an important criterion when considering library
extension/change proposals.
To put this another way: a physics constant library
is only useful to a small group: we'd like to provide
more support for that group, but not at the cost
of making the library a lot more complex.
-- John (Max) Skaller, mailto:skaller_at_[hidden] 10/1 Toxteth Rd Glebe NSW 2037 Australia voice: 61-2-9660-0850 checkout Vyper http://Vyper.sourceforge.net download Interscript http://Interscript.sourceforge.net
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk