On 5. Sep 2020, at 18:03, Kostas Savvidis via Boost
wrote: On Sep 5, 2020, at 03:02, Damian Vicino via Boost
wrote: There is actually not much overlap with other libraries, it may in the implementation details be some overlap with boost::interval arithmetic, but not in the goals or features exposed.
The goal in Real is to evaluate expressions that the required precision to evaluate them accurately is unknown in advance and explores how to achieve perfect accuracy for the evaluation, or fails noisily.
I am planning to do a full review, and certainly will try to see whether it can evaluate some hard numerical expressions. Unfortunately, it is clear already that the documentation is severely lacking. My suggestion right now is to delay the start of the review until we have proper documentation.
I second that. I am interested in reviewing this, but the docs and the medium article didn't explain very well what kind of problem this library solves. A simple educational example early on in the introduction would be helpful. The scope/target audience is not clear (as Robert already mentioned). Boost.Real does not seem to target high-performance computing, because the approach of using a variable number of intervals to represent floating point numbers does not appear to be particularly cache and/or SIMD friendly. Furthermore, the existing algorithms in high-performance computing are designed to deal with the limitations of float/double explicitly, by doing computations in a way that the FP error is kept under control. They do a good job. If high-performance is not the target anyway but accuracy is, then my first instinct would be to use a multi-precision type rather than Boost.Real. Best regards, Hans