我想了解一下Haskell的System.Random
在阅读了解您对Haskell的好处的I/O章后的工作原理。Haskell中StdGen类型的字符串表示的含义
据我所知,类型StdGen
的值的行为就像随机序列的生成种子。这意味着StdGen
类型不过是一种标记(但随机)整数,标记为StdGen
。它是否正确?
另外getStdGen
查询操作系统(或其他可能?)的起始种子,执行该操作的结果存储在gen
中。
每当我尝试打印一个StdGen
类型的值时,我会看到两个总是用空格隔开的大整数,如下所示。我会想象,这个值将是一个整数单个。那么这个白色空间代表什么?
Prelude System.Random> gen <- getStdGen
Prelude System.Random>
Prelude System.Random> gen
751404879 1655838864
Prelude System.Random>