[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

cheers
-------------- 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