[Haskell-cafe] DevRandom

Yitzchak Gale gale at sefer.org
Tue Jan 30 09:47:35 EST 2007


Have I re-invented the wheel yet again?

I have a module the following simple functions,
that I have been using for some time:

-- Read data from the system random device.
-- Return Nothing if there is currently not
-- enough entropy in the system random device.
devRandom :: Storable a => IO (Maybe a)

-- Read data from the system random device.
-- If necessary, wait until there is
-- enough entropy in the system random device.
devRandomWait :: Storable a => IO a

-- Read data from the system random device.
-- If there is currently not enough entropy
-- in the system random device, use a lower
-- quality source of randomness instead.
devURandom :: Storable a => IO a

These are currently implemented only for
platforms that have a /dev/random and
/dev/urandom device, i.e., Unix-like.

I know how to implement the third function -
devURandom - on Windows, but I don't
currently have a Windows box on which
I can compile Haskell. I don't know how
to implement the other two functions on
Windows.

This seems like something that is important
to be in the standard library, or at least publicly
accessible. Is it out there already and I am
just missing it? If not, what is the best way
to make this available?

Is there someone who would like to do
the Windows part?

-Yitz


More information about the Haskell-Cafe mailing list