<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im">
<br>
$ ghci<br>
GHCi, version 6.12.3: <a href="http://www.haskell.org/ghc/" target="_blank">http://www.haskell.org/ghc/</a>  :? for help<br>
Loading package ghc-prim ... linking ... done.<br>
Loading package integer-gmp ... linking ... done.<br>
Loading package base ... linking ... done.<br>
Loading package ffi-1.0 ... linking ... done.<br>
</div>Prelude&gt; :m +Data.IORef Control.Concurrent Control.Monad<br>
Prelude Data.IORef Control.Concurrent Control.Monad&gt; msg &lt;- newIORef &quot;Hello&quot;<br>
Prelude Data.IORef Control.Concurrent Control.Monad&gt; let echo =<br>
forever $ readIORef msg &gt;&gt;= putStrLn &gt;&gt; threadDelay 3000000<br>
Prelude Data.IORef Control.Concurrent Control.Monad&gt; t &lt;- forkIO echo<br>
Hello<br>
Prelude Data.IORef Control.Concurrent Control.Monad&gt; Hello<br>
Hello<br>
writeIORefHello msg &quot;World&quot;<br>
Prelude Data.IORef Control.Concurrent Control.Monad&gt; World<br>
World<br>
</blockquote></div><br><div>Thanks ... this is the possibility I was looking for. Btw, I am thinking I&#39;d need to use STM to synchronize right?</div><div>Regards,</div><div>Kashyap</div>