On Tuesday, 7 June 2016 at 08:21:23 UTC, Russel Winder wrote:
On Mon, 2016-06-06 at 13:35 -0700, Walter Bright via Digitalmars-d wrote:

[…]
What I've done, though I know that I won't convince any users of
BigDecimal, is
use longs and have them represent pennies instead of dollars. Then
they're all
exact to two places.

You are right, your use of integers (even 128-bit ones) will not convince anyone doing anything finance other than household accounting.

It is the same as base 10 floating point, with rounding to N decimals places, you just make the exponent part of the type. Making the exponent and rounding fixed is basically just an optimization where it is statically known.

Anyway, there is no point in having base 10 floating point part of the language unless you target hardware with base 10 floats.

There are already base 10 IEEE754-2008 implementations available for other languages that those in need can:

1. translate to D

2. unit test against the reference implementation

If well-funded industries like finance want it, they can easily do it.

This is quite different from say meta-programming, syntax, tooling, memory management and basic data types which are language related-issues, not small-scale funding issues.

Reply via email to