|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r83523 - sandbox/precision/libs/precision/doc
From: e_float_at_[hidden]
Date: 2013-03-22 18:19:35
Author: christopher_kormanyos
Date: 2013-03-22 18:19:34 EDT (Fri, 22 Mar 2013)
New Revision: 83523
URL: http://svn.boost.org/trac/boost/changeset/83523
Log:
Further work on precision_chris.qbk.
Text files modified:
sandbox/precision/libs/precision/doc/precision_chris.qbk | 34 ++++++++++++++++++----------------
1 files changed, 18 insertions(+), 16 deletions(-)
Modified: sandbox/precision/libs/precision/doc/precision_chris.qbk
==============================================================================
--- sandbox/precision/libs/precision/doc/precision_chris.qbk (original)
+++ sandbox/precision/libs/precision/doc/precision_chris.qbk 2013-03-22 18:19:34 EDT (Fri, 22 Mar 2013)
@@ -110,7 +110,7 @@
All these development have made C++ much more attractive to the scientific and engeering community,
especially those needing higher (or lower) precision for some (if not all) of the calculations,
-previously the domain covered by __Mathematica, __Matlab and others where the precision can be arbitrarily chosen.
+previously the domain covered by computer algebra systems for which the precision can be arbitrary.
[endsect] [/section:background Background]
@@ -119,10 +119,12 @@
Since the inceptions of C and C++, the built-in types `float`, `double`, and `long double` have provided
a strong basis for floating-point calculations. Optional compiler conformance with __IEEE_floating_point
has generally led to a relatively reliable and portable environment for floating-point calculations
-in the programming community. It is, however, emphasized that floating-point adherence
+in the programming community.
+
+It is, however, emphasized that floating-point adherence
to __IEEE_floating_point is not mandated by the current C++ language standard.
Nor does the standard enforce specific widths or precisions of the built-in types
-`float`, `double`, and `long` `double`. This can lead to portability problems
+`float`, `double`, and `long double`. This can lead to portability problems
and reduce reliability and safety.
This situation reveals a need for more standard ways to specify precision.
@@ -138,15 +140,15 @@
of floating-point calculations in C++ by ensuring that the actual precision
of a floating-point type can be exactly determined both at compile-time
as well as during the run of a calculation.
-Strong interest in floating-point types with specified width
+Strong interest in floating-point types with specified widths
has, for example, been expressed on
the [@http://lists.boost.org/Archives/boost/2013/03/201786.php Boost list discussion of precise floating-point types].
-Recent specification of fixed-size integer types
-in C99, C11 and C++11 and [@http://open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3376.pdf C++ draft specification]
+Recent specification of integer types with specified widths
+in C99, C11, C++11, and [@http://open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3376.pdf C++ draft specification]
has drastically improved integer algorithm portability and range.
-One example of how specific-size integer types have proved invaluable is described by Robert Ramey
+One example of how specific-size integer types have proven to be essential is described by Robert Ramey
[@http://lists.boost.org/Archives/boost/2002/11/40432.php
Usefulness of fixed integer sizes in portability (for Boost serialization library).]
@@ -166,22 +168,22 @@
platform.
[rdquote]
-The motivations to provide floating-point types with specified width
+The motivations to provide floating-point types with specified widths
are analogous to those that led to the introduction of integers
-with specific widths such as `int8_t`, `int16_t`, `int32_t`, and `int64_t`.
-Along these lines, similar specification of floating-point types with
-specified widths could potentially improve the C++ language
-significantly, especially in the scientific and engineering communities
+with specified widths such as `int8_t`, `int16_t`, `int32_t`, and `int64_t`.
+The specification of floating-point types with specified widths
+and adherence to __IEEE_floating_point can potentially
+improve the C++ language significantly, especially in the
+scientific and engineering communities
where other languages have found benefit from types that conform
exactly to the __IEEE_floating_point.
-Furthermore, the proposed mandatory adherence
(Notes on jargon: Section 22.3 in the book "The C++ Standard Library Extensions",
-P. Becker, Addison Wesley 2007, ISBN 0-321-41299-0 is called "Fixed-Size Integer Types",
-used of the descriptor ['fixed] has lead to some confusion.
+P. Becker, Addison Wesley 2007, ISBN 0-321-41299-0 is called "Fixed-Size Integer Types".
+Use of the descriptor ['fixed] has lead to some confusion.
So the descriptor ['specific] in conjunction with width is here used to
match the wording of C99 and C11 in the sections and subsections describing
-`<stdint.h>`.)
+`stdint.h`.)
[endsect] [/section:introduction Introduction]
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk