|
Boost : |
From: Bill Seymour (bill-at-the-office_at_[hidden])
Date: 2002-09-03 15:33:24
Thanks for the nice things that some have said about the fixed-point
decimal proposal. I was beginning to wonder whether nobody had
anything bad to say, or nobody cared. 8-)
There was a recent thread entitled "Benefit/Complexity ratio..."
in which it was suggested that a number of similar libraries
could reasonably coexist within Boost; and it seems to me that
fixed-point decimal and fixed-point binary libraries are good
examples. Just because they both have "fixed-point" in their
titles doesn't mean that they both do the same things. Indeed,
the two main application domains, financial for decimal and
embedded systems for binary, are quite different. Sure, much
of the interface will be similar; but that's just because they're
both numeric types and so necessarily have operator+=, etc.
Personally, I would welcome Stephen's fixed-point binary library
as a separate submission.
The one thing I'd like to say again, just so it doesn't get lost,
is that there are C/C++ compatibility issues with a fixed-point
binary library because of work now going on in J11/WG14. I'd like
to see the library be general enough that there could be typedefs
for the various types in ISO/IEC WDTR 18037 (WG14 N972). This
would seem to be a natural for templates. For example, since we
couldn't implement the pragmas, could sat/modwrap and 1-or-2 ulp
accuracy be policies?
BTW, saying that I "rejected" a template version of the fixed-
point decimal proposal is a bit too strong. I just thought
the non-template version was a bit easier to do. Whether
that's also true for a fixed-point binary class remains to
be seen. (Also, one reason for going to a non-template design
was that I have a personal requirement for the library to be
usable with a compiler that doesn't seem to be able to
deduce non-type template arguments. That's not mentioned
in the fixed-point decimal documentation because that compiler
isn't supported by Boost.)
--Bill Seymour
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk