[Haskell-cafe] Insert a laziness break into strict ST

Antoine Latter aslatter at gmail.com
Sun Dec 6 20:26:57 EST 2009


On Sun, Dec 6, 2009 at 5:46 PM, Henning Thielemann
<lemming at henning-thielemann.de> wrote:
> I have lot of ST actions that shall be bound strictly (they write to a
> buffer), but somewhere between these actions I like to have a "laziness
> break". I thought I could do this by temporarily switching to Lazy.ST,
> but this does not work. It follows a simplified example
>

<snip>

>
> I hoped to get the first answer also for the second command. It seems
> that conversion from lazy to strict ST also removes laziness breaks.
>
> It seems that I have to stick to unsafeInterleaveIO, but I like to know,
> why the above method does not work.

This isn't the answer you want, but there is an unsafeInterleaveST.

Antoine


More information about the Haskell-Cafe mailing list