Simon Marlow wrote:
So it would be pretty easy to provide something like

  disableMajorGC, enableMajorGC :: IO ()

Of course leaving it disabled too long could be bad, but that's your responsibility.

It seems like it'd be preferable to have an interface like:

    withMajorGCDisabled :: IO() -> IO()

or (for some definition of K):

    withMajorGCDisabled :: (K -> IO()) -> IO()

in order to ensure that it always gets turned back on eventually. Of course, the latter can be created from the former pair. It's just that the former reminds me a bit much of explicit memory management and how difficult it is to balance the free()s...

--
Live well,
~wren
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to