@@ -539,9 +539,11 @@ scientifically h = do
539539 (negate $ B8.length fracDigits)
540540 step a w = a * 10 + fromIntegral (w - 48)
541541
542− s <- let dot = 46 in
543− (I.satisfy (==dot) *> (f <$> I.takeWhile isDigit_w8)) <|>
544− pure (Sci.scientific n 0)
542+ dotty <- I.peekWord8
543+ -- '.' -> ascii 46
544+ s <- case dotty of
545+ Just 46 -> I.anyWord8 *> (f <$> I.takeWhile isDigit_w8)
546+ _ -> pure (Sci.scientific n 0)
545547
546548 let !signedCoeff | positive = coefficient s
547549 | otherwise = negate $ coefficient s