Bulat Ziganshin wrote: > plus a b = unsafePerformIO (modifyIORef counter (+1)) `seq` a+b > Erm... might it be better to use an MVar? (To avoid lost updates if there are multiple render threads.)