On Fri, 16 Jun 2000, Dave Peticolas wrote:
> Richard Wackerbarth writes:
> > > > Each currency has its own "primitive" amount and all transactions are
> > > > conducted in terms of that unit.

> > > This suggests that we should be storing integers

> I don't think this is very practical. There are well over 100
> currencies in circulation and keeping track of them is not a small
> task. Also, it's not just a matter of gathering the information once,
> because, as someone has already pointed out, the 'primitive' amount of
> a currency can change.
Yes, but not very often. In a practical sense, you set up the currencies that 
you use and forget the rest.

> Furthermore, gnucash also should be able to
> track mutual fund shares, precious metal quantities, and anything else
> of financial value that users might wish, in whatever accuracy they
> want.

Agreed. Stock in XYZ Corp is just another currency. And to complicate things,
it trades in different units in different places.

> If the use of floating points becomes an issue,
As far as I am concerned, it IS an issue.

> I think a better
> solution would be to use an arbitrary precision library. We would
> still get absolute accuracy, but we would dispense with the need to
> track 'primitive units' for every currency/whatever that people might
> wish to count.

When transactions occur, they are rounded. In general, the roundoff error 
accumulates to an amount which exceeds the displayed precision.
We need to model the actual behavior rather than approximating it.

This can only be done by knowing the rounding precision of each transaction.
Therefore, we must track the 'primitive units'.

If I cannot convince the gnucash folks of this, I'll have to advocate 
agnu-er-cash project since a project based on "floating point is good enough" 
will never "get it right".

--
Gnucash Developer's List
To unsubscribe send empty email to: [EMAIL PROTECTED]


Reply via email to