Запретить функцию от печати на экран

В настоящее время я использую GHCI для измерения времени выполнения нескольких функций. Поскольку эти функции производят довольно длинный вывод, который меня не интересует, мне было интересно, есть ли способ предотвратить вывод таких выводов на экран и отображать только время выполнения, полученное с помощью::set + s

1 ответ

Я бы порекомендовал вам использовать criterion измерить время выполнения. Он заботится о том, чтобы оценить результаты чистых функций для (WH)NF, повторить тест несколько раз и т. Д.

Если вы хотите скрыть вывод, сохраняя при этом все оцениваемое, я бы посоветовал вам параметризовать ваш код относительно вывода. Например, по Handle или просто функцией типа String -> IO (), Затем вы можете легко перенаправить вывод в файл, чтобы /dev/null или в последнем случае даже просто форсируют его оценку, передавая evaluate . rnf,

Другие вопросы по тегам