[Haskell-cafe] newbie timing question
Spencer Janssen
sjanssen at cse.unl.edu
Fri Jan 26 18:20:22 EST 2007
On Jan 26, 2007, at 4:56 PM, Sean McLaughlin wrote:
>
> Hello,
>
> I'm trying to write a simple function to time an application.
>
> -- this doesn't work
>
> time f x =
> do n1 <- CPUTime.getCPUTime
> let res = f x in
> do n2 <- CPUTime.getCPUTime
> return (res,n2 - n1)
>
> On a function that takes 8 seconds to complete, returns
> (True,46000000)
Remember that Haskell is lazy -- res won't be evaluated until it is
forced. See the evaluate function in Control.Exception to force a
value in the IO monad.
Spencer Janssen
More information about the Haskell-Cafe
mailing list