我需要一些Int
s 用作随机数生成的种子,所以我想使用使用系统时间作为种子的旧技巧。
所以我尝试使用 Data.Time 包,我设法做到了以下几点:
import Data.Time.Clock
time = getCurrentTime >>= return . utctDayTime
当我运行时间时,我会得到如下信息:
Prelude Data.Time.Clock> time
55712.00536s
的类型time
是IO DiffTime
。我希望看到一种IO Something
类型,因为这取决于程序外部的东西。所以我有两个问题:
a) 是否有可能以某种方式打开 IO 并获得底层 DiffTime 值?
b) 如何将 DiffTime 转换为整数,其值以秒为单位?有一个函数secondsToDiffTime
,但我找不到它的逆函数。