On Wed, 4 Jun 2008, Andrew Coppin wrote: > How would you do this? > > The approach I came up with is to slurp up the words like so: > > raw <- readFile "words.txt" > let ws = words raw > let n = length ws > let wa = listArray (1,n) ws > > (I actually used lazy ByteStrings of characters.) So now I have an array > of packed ByteStrings, and I can pick array indexes at random and use > "unwords" to build my gibberish "sentences".
Sounds like a generator for scientific articles. :-) Maybe http://hackage.haskell.org/cgi-bin/hackage-scripts/package/markov-chain can be of help for you. It's also free of randomIO. > In my current implementation, all of this is in the IO monad (so I can > pick things randomly). You know of http://www.haskell.org/pipermail/haskell-cafe/2006-December/020005.html ? _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe