Haskell Report (again)
Fri, 20 Jul 2001 10:35:36 -0400
On Fri, Jul 20, 2001 at 04:59:05AM -0700, Simon Peyton-Jones wrote:
> Dale is absolutely right! How has this entirely bogus code survived so
Err, my name is Dylan...
> Here is an (alleged) fix, which works in the tests I've tried. If
> anyone else can spare a moment to check my code I'd be very
(a) Where's the definition of mk0? (It was in the text you deleted.)
(b) What is the code supposed to do? The code you posted always
prints a decimal point; I imagine this is intended? Can this be
(c) I don't think the case e=0 is right; you miss the initial "0".
(d) "floatToDigits" seems to return an exponent that is off by 1 from
what I expected at first. This is reasonable, but since the
function is exported, it should be documented.
> Library Report, Numeric library, Section 4.1, page 13.
> In the definition of formatRealFloat,
> in the definition of doFmt,
> in the FFFixed branch of "case fmt of ...",
> in the Nothing branch of "case decs of ..."
> replace the entire branch "Nothing -> ..." with
> Nothing | e >= 0 -> take e (ds ++ repeat '0') ++ "." ++ mk0
> (drop e ds)
> | otherwise -> "0." ++ replicate (-e) '0' ++ ds