According to the documentation for System.Random (see <http://
haskell.org/ghc/docs/latest/html/libraries/base/System-Random.html>):
In addition, read may be used to map an arbitrary string (not
necessarily one produced by show) onto a value of type StdGen. In
general, the read instance of StdGen has the following properties:
* It guarantees to succeed on any string.
* ...
On the other hand, I get the following on the (admittedly stupid,
spur-of-the-moment) String argument "whateva":
Hugs> :l System.Random
System.Random> read "whateva" :: StdGen
Program error: Prelude.read: no parse
System.Random> map read $ words "this is a test of the System dot
Random StdGen read, which seems to fail only on ... whateva" ::
[StdGen]
[4580 1,440 1,101 1,4584 1,445 1,1485 1,35261 1,1377 1,32825
1,34047 1,13422 1,14037 1,13637 1,469 1,4132 1,4514 1,453 1,626 1,
Program error: Prelude.read: no parse
Am I missing something here? Or am I just being punished for the
stupidity of my particular choice of String? :)
-- Fritz
PS: this happens with both Hugs Version: September 2006 and GHC
Interactive, version 6.6, running on Mac/Tiger, for what that's worth._______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe