Er, ok.

I now have an answer saying "ledger uses floats; you are hosed." and 
"ledger does not use floats; you are hosed".

Is there a way to use the -d option to fix this?

Charles

On Friday, August 23, 2013 11:15:00 AM UTC-7, John Wiegley wrote:
>
> >>>>> Jeffrey Brent McBeth <[email protected] <javascript:>> writes: 
>
> > On Thu, Aug 22, 2013 at 09:53:26PM -0700, Charles Merriam wrote: 
> >> It's a nice idea.  I have no four digit amounts; this gives no output. 
>      
> >> ledger -w -f 2013.led register | grep "\.\d\d[1-9]"  My guess is ledger 
> is 
> >> doing floats instead of paired fixed precision, so some amount doesn't 
> >> represent well in IEEE exactly, triggers the longer field, and then 
> rounds 
> >> back to zero ten-thousandths of a penny anyway. 
>
> > The ledger docs are pretty explicit in the fact that they use floats for 
> > amounts.  I just grepped through the code, and there are astoundingly 
> few 
> > instances of the word float or double in the code, and they appear at 
> first 
> > blush to all be related to size calculations rather than storing any 
> > amounts. 
>
> Ledger *NEVER* uses floats for monetary values, but only for imprecise 
> things 
> where loss of precision does not matter.  Rather, Ledger uses 
> infinite-precision rational numbers, which are rendered to floating-point 
> at 
> display time, in order to round the value to a fixed number of decimal 
> places. 
>
> This is actually problematical if you want to do "fixed-point accounting", 
> which rounded amounts are intentionally shaved; but it is a benefit if you 
> wish to never lose track of fractions of commodities, no matter how small. 
>
> John 
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"Ledger" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to