标签: haskell ghci
我目前正在使用GHCI来测量几个函数的运行时间。由于这些函数产生了我不感兴趣的相当长的输出,我想知道是否有任何方法可以阻止这些输出显示到屏幕上,并且只显示通过以下方式获得的运行时:: set + s
答案 0 :(得分:2)
我建议您使用criterion来衡量运行时。它负责评估纯函数的结果(WH)NF,重复测试几次等。
criterion
如果你想隐藏输出,同时仍然保持评估的所有内容,我建议你根据输出参数化你的代码。例如,通过Handle,或仅通过类型String -> IO ()的函数。然后,您可以轻松地将输出重定向到文件,/dev/null,或者在后一种情况下,甚至只需通过evaluate . rnf强制进行评估。
Handle
String -> IO ()
/dev/null
evaluate . rnf