Proposal: Add Control.Exception.allowInterrupt

Isaac Dupree ml at isaac.cedarswampstudios.org
Thu Dec 23 20:39:41 CET 2010


On 12/22/10 05:37, Simon Marlow wrote:
> This proposal is to add the following function to Control.Exception:
>
> -- | When invoked inside 'mask', this function allows a blocked
> -- asynchronous exception to be raised, if one exists. It is
> -- equivalent to performing an interruptible operation (see
> -- #interruptible#), but does not involve any actual blocking.
> --
> -- When called outside 'mask', or inside 'uninterruptibleMask', this
> -- function has no effect.
> allowInterrupt :: IO ()
> allowInterrupt = unsafeUnmask $ return ()

Can you summarize the rationale?  I didn't easily figure it out by 
skimming the long thread you referenced ( 
http://hackage.haskell.org/trac/ghc/ticket/4810 )

-Isaac



More information about the Libraries mailing list