On Tue, Aug 02, 2016 at 07:46:20PM +0100, Zefram wrote: > > sprintf("%f", 2e0**70) > 1180591620717410000000.000000 > > >In particular, the true value is *not* always available, > > By "true value" I meant the value represented in floating point.
My apologies, I did not catch this meaning of "true value" from your posts. You've correctly deduced that I've been referring to the mathematically pure value represented by the decimal literal in source code, and not the value that results from its conversion to floating point. I agree that having sprintf("%f") automatically truncate with zeros after 15 digits of precision is perhaps not the best approach here. I think it should perhaps be available to at least 17 places, and possibly even more in examples like 2**70. But that's a language specification call that someone outside of Rakudo probably needs to make. Pm