سؤال

I need to find a good value to feed into mkStdGen as a seed.

The first thing I'd normally do is just use the ticks since the beginning of the epoch, however, to do that I use getClockTime from System.Time, which according to hackage is deprecated, in favour of Data.Time. The latter doesn't seem to expose this functionality though.

Is there a better way to generate a seed for this value? Or should I just ignore the deprecation warning?

هل كانت مفيدة؟

المحلول

This is usually unnecessary, because the global StdGen is seeded with the current time at startup. So you can just use randomIO and randomRIO and have an implicit, IO-based random number generator, or getStdGen and the usual pure functions for a more explicit one.

نصائح أخرى

Are you looking for getPOSIXTime (docs)?

Footnote: Please note that this DOES NOT return the number of ticks since the beginning of any epoch, and you should never claim that it does. It returns the "POSIX time" which defined based on a lossy conversion from UTC time, and UTC time is not useful for determining intervals between dates without an up-to-date conversion database.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top