2012-07-14 22 views
0

我需要找到一個很好的價值,飼料作爲種子mkStdGen什麼是一個很好的價值種子stdgen

我通常做的僅僅是使用刻度從新紀元的開始,但是,要做到這一點我用getClockTimeSystem.Time,而根據hackage已過時,有利於Data.Time的第一件事。後者似乎並沒有公開這個功能。

有沒有更好的方法來爲此值生成種子?或者我應該忽略棄用警告?

+8

好_爲什麼purpose_?否則我不得不回答,['4'](http://xkcd.com/221/)。 – leftaroundabout 2012-07-14 23:28:14

+0

Data.Time中的['getCurrentTime'](http://hackage.haskell.org/packages/archive/time/1.4.0.1/doc/html/Data-Time-Clock.html#v:getCurrentTime)怎麼樣? (我知道這不是紀元時間,但它提供了一個相同的數字。) – huon 2012-07-14 23:32:41

+0

(實際上,['getPOSIXTime'](http://hackage.haskell.org/packages/archive/time/1.4.0.1/doc/html /Data-Time-Clock-POSIX.html#v:getPOSIXTime)從Data.Time.Clock.POSIX正是你想要的。) – huon 2012-07-14 23:37:36

回答

9

這通常是不必要的,因爲global StdGen在啓動時用當前時間播種。所以你可以使用randomIOrandomRIO,並有一個隱式的,基於IO的隨機數發生器,或者getStdGen和通常的純函數。

5

您是否在尋找getPOSIXTimedocs)?

腳註:請注意,這DOES NOT因爲任何時代的開始返回蜱的數量,你永遠不應該聲稱它。它返回基於UTC時間有損轉換定義的「POSIX時間」,而UTC時間對於確定沒有最新轉換數據庫的日期之間的時間間隔無用。

相關問題