[Haskell-cafe] Displaying fractions of a second from a datediff?
Hugh Perkins
hughperkins at gmail.com
Sat Jul 14 15:31:15 EDT 2007
Hi,
Pretty dumb question I know, but..how to I display fractions of a second
from a datediff?
ie:
main = do starttime <- gettime
-- do something here that takes a few seconds
endtime <- gettime
let timediff = diffClockTimes endtime starttime
let timediffstring = show( tdSec timediff) ++ " " ++ show(
realToFrac(tdPicosec timediff) / 1000000000 )
putStrLn( show(timediffstring) )
return ()
tdPicosec is negative??? ... but sometimes it is positive... so it's
really unclear what the appropriate way to handle this is!
Example outputs:
"1 -62.0"
"0 921.0"
... it could be that the time in seconds in the second example is "0.921",
but for the first, is it "1.062" (adding the absolute milliseconds) or is it
"0.938" (adding the negative milliseconds)?
Tried to figure this out by generating timeDiffs myself then normalizing
them, but this doesnt seem to do anything useful ;-) :
Prelude> normalizeTimeDiff $ TimeDiff 0 0 0 0 0 0
1000000000000000000000000000000
0000
TimeDiff {tdYear = 0, tdMonth = 0, tdDay = 0, tdHour = 0, tdMin = 0, tdSec =
0,
tdPicosec = 10000000000000000000000000000000000}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20070714/6c5c23f6/attachment.htm
More information about the Haskell-Cafe
mailing list