[Haskell] ST/STRef vs. IO/IORef

Srinivas Nedunuri nedunuri at cs.utexas.edu
Tue Aug 2 23:13:58 EDT 2005

Hello, I have some code that manipulates STRefs within the ST monad. All good and fine, until I come across some computation that uses lets say IO and everything skids to a halt. At this point I have 3 choices:

1. Define a ST State Transformer monad and do all my previous ST computations in that
2. convert all subsequent ST computations into IO computations using stToIO 
3. stop using the ST monad and do everything in the IO monad

I was wondering what advice folks had. In particular, what are the disadvantages to doing everything in the IO monad - ie why even bother with the ST monad?

Any help appreciated

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org//pipermail/haskell/attachments/20050802/d11631d4/attachment.htm

More information about the Haskell mailing list