@@ -59,9 +59,9 @@ impureUnliftEff f = impureEff $ \es -> do
59 tid0 <- myThreadId
59 tid0 <- myThreadId
60 f $ \(Eff m) -> do
60 f $ \(Eff m) -> do
61 tid <- myThreadId
61 tid <- myThreadId
62− -- If the lifting function is called from a different thread, we need to
62+ -- If the unlifting function is called from another thread, we need to clone
63− -- clone the environment. Otherwise multiple threads will attempt to modify
63+ -- the environment. Otherwise multiple threads will attempt to modify it in
64− -- it in different ways and things will break horribly.
64+ -- different ways and things will break horribly.
65 if tid0 == tid
65 if tid0 == tid
67 else m =<< cloneEnv es
67 else m =<< cloneEnv es